Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Интерфейс командной строки (CLI) nuget.exe позволяет управлять пакетами NuGet в Visual Studio проектах и решениях. В этой статье описываются наиболее распространенные команды интерфейса командной строки NuGet для управления пакетами NuGet. Все эти команды работают в Windows, и большинство из них работают на macOS, а также на Linux с помощью Mono.
Интерфейс командной строки NuGet выполняется в .NET Framework и проектах, не относящихся к пакету SDK, например проектам, не предназначенным для стандартных библиотек .NET. Команды ИНТЕРФЕЙСА командной строки NuGet могут использовать файл packages.config проекта, который содержит ссылки на пакеты. Для проектов, не относящихся к стилю SDK, которые используют PackageReference вместо packages.config для управления пакетами, используйте dotnet CLI.
Замечание
Для большинства проектов, не соответствующих стилю SDK, которые используют packages.config, лучше перенести packages.config на PackageReference, а затем использовать dotnet CLI вместо NuGet CLI для управления пакетами. Однако нельзя перенести проекты C++ или ASP.NET.
Для большинства команд средство интерфейса командной строки NuGet использует текущую папку, если в команде не указано другое расположение. Чтобы запустить команды Интерфейса командной строки NuGet, откройте программу командной строки и переключитесь в папку, содержащую файл проекта.
Полный список команд и их аргументов см. в справочнике по Интерфейсу командной строки NuGet.
Предпосылки
Скачайте CLI NuGet из nuget.org. Сохраните файл nuget.exe в подходящую папку и убедитесь, что папка находится в переменной среды PATH.
Чтобы проверить версию интерфейса командной строки NuGet, откройте программу командной строки и выполните команду nuget help. Или, чтобы избежать необходимости прокручивать вверх, используйте nuget help | more. Первая строка в справочной информации показывает версию.
Установка пакета
Команда NUGet CLI install загружает и устанавливает указанные пакеты NuGet.
Это важно
Команда install не изменяет файл проекта или файлpackages.config . Команды install и restore только добавляют пакеты на диск, но не добавляют зависимости в проекты. Чтобы добавить зависимости проекта, добавьте пакеты с помощью пользовательского интерфейса Visual Studio Package Manager или Package Manager консоли. Если вы запускаете install или restore, возможно, в другой среде, устанавливаются или восстанавливаются только объявленные зависимости.
-OutputDirectory Используйте параметр установки пакетов в определенной папке. Если вы не указываете выходную папку, install использует текущую папку.
nuget install <package-ID | configuration-file-path> -OutputDirectory <output-folder>
Например, чтобы установить Newtonsoft.json пакет в подпапке пакетов , используйте следующую команду:
nuget install Newtonsoft.Json -OutputDirectory packages
Вместо указания пакета для установки можно указать существующий файлpackages.config в текущей папке или другой папке. Команда install устанавливает все пакеты, перечисленные в файлеpackages.config .
nuget install packages.config
Например, следующая команда устанавливает все пакеты, перечисленные в packages.config в подпапке конфигурации текущей папки. Команда устанавливает пакеты в папке пакетов .
nuget install config\packages.config -OutputDirectory packages
Установка определенной версии пакета
Команда install устанавливает последнюю версию пакета, если не указана другая версия. Чтобы установить определенную версию пакета, используйте -Version параметр:
nuget install <package-ID> -Version <version>
Например, чтобы установить версию 12.0.1 пакета, используйте следующую Newtonsoft.json команду:
nuget install Newtonsoft.Json -Version 12.0.1
Список пакетов
search Используйте команду для отображения основных сведений о пакетах в указанном источнике.
nuget search -Source <source>
Например, чтобы перечислить пакеты в подпапке в папке MyProject, используйте следующую команду:
nuget search -Source C:\Users\%USERNAME%\source\repos\MyProject\packages
Можно также указать условия поиска, чтобы ограничить результаты именами пакетов, тегами или описаниями:
nuget search <search-terms> -Source <source>
Обновление всех пакетов
Используйте команду update для обновления всех пакетов в файле packages.config проекта до последних доступных версий. Для <configuration-file-path> используйте путь к файлу packages.config.
nuget update <configuration-file-path>
Лучше всего запустить restore перед запуском update. Затем команда update содержит сведения о версиях пакетов, которые используются. Эта информация помогает корректно разрешать зависимости.
Удалите пакет
Чтобы удалить пакет, его можно удалить из папки проекта. Чтобы переустановить пакеты, используйте restore команды или install команды.
Удаление пакетов с диска не обновляет файлы проекта, packages.configили NuGet.Config . Лучшим способом удаления пакетов является использование пользовательского интерфейса Visual Studio Package Manager или Package Manager консоли.
Восстановление пакетов
Команда CLI restore NuGet загружает и устанавливает отсутствующие пакеты. Команда работает над проектами, которые используют либо PackageReference, либо packages.config для ссылок на пакеты.
Например install, restore команда добавляет только пакеты на диск. Он не изменяет файл проекта или файлpackages.config . Чтобы добавить зависимости проекта, используйте пользовательский интерфейс или консоль Visual Studio Package Manager.
Чтобы восстановить пакеты, выполните следующую команду:
nuget restore <project-path>
Команда restore использует файл решения или файл package.config в указанном пути проекта.
Например, чтобы восстановить все пакеты для MySolution.slnx в текущем каталоге, выполните следующую команду:
nuget restore MySolution.slnx
Замечание
Для проектов, использующих не SDK-стиль, рекомендуется использовать PackageReference для восстановления пакетов вместо команды msbuild -t:restore. Команда msbuild -t:restore использует ту же логику оценки и разрешения проекта, что и сборка, которая помогает обеспечить согласованное и надежное разрешение зависимостей.
Дополнительные сведения см. в разделе пакеты восстановления.