Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Проще говоря, различные средства NuGet обычно создают ссылку на пакет в файле проекта или packages.config, затем выполняют восстановление пакета, что эффективно устанавливает пакет. Исключение заключается в том nuget install, что пакет расширяется только в папку packages и не изменяет другие файлы.
Общий процесс выглядит следующим образом:
(Все инструменты, кроме
nuget.exe) Зафиксируйте идентификатор пакета и версию в файл проекта илиpackages.config.Если средство установки — Visual Studio или dotnet CLI, средство сначала пытается установить пакет. Если это несовместимо, пакет не добавляется в файл проекта или
packages.config.Приобретите пакет:
Проверьте, установлен ли пакет (по точному идентификатору и номеру версии) в папке глобальных пакетов , как описано в разделе "Управление глобальными пакетами и папками кэша".
Если пакет не находится в папке глобальных пакетов , попытайтесь получить его из источников, перечисленных в файлах конфигурации. Конфигурации сопоставления источников пакетов применяются на этом этапе. Для сетевых источников сначала попытайтесь получить пакет из HTTP-кэша, если
-NoHttpCacheне указано сnuget.exeили--no-http-cacheне указано сdotnet restore. (Visual Studio иdotnet add packageвсегда используют кэш.) Если пакет используется из кэша, в выходных данных появится надпись CACHE. Кэш имеет время истечения срока действия 30 минут.Если пакет был указан с помощью плавающей версии или без минимальной версии, NuGet свяжется со всеми источниками, чтобы определить лучшее соответствие. Пример:
1.*,(, 2.0.0].Если пакет не находится в кэше HTTP, попытайтесь скачать его из источников, перечисленных в конфигурации. Если пакет скачан, в выходных данных отображаются "GET" и "ОК". NuGet регистрирует HTTP-трафик при нормальном уровне подробности.
Если пакет не может быть успешно получен из любых источников, установка завершается ошибкой, например NU1103. Обратите внимание, что ошибки из
nuget.exeкоманд показывают только последний проверенный источник, но подразумевает, что пакет недоступен из любого источника.
При получении пакета порядок источников в конфигурации NuGet может применяться:
- NuGet проверяет источники локальных папок и сетевых ресурсов перед проверкой источников HTTP.
Сохраните копию пакета и другие сведения в папке http-cache , как описано в разделе "Управление глобальными пакетами и папками кэша".
При скачивании установите пакет в папку глобальных пакетов для каждого пользователя. NuGet создает вложенную папку для каждого идентификатора пакета, а затем создает вложенные папки для каждой установленной версии пакета.
NuGet устанавливает зависимости пакетов по мере необходимости. Этот процесс может обновить версии пакетов в процессе, как описано в разделе "Разрешение зависимостей".
Обновите другие файлы и папки проекта:
- Для проектов с помощью PackageReference обновите граф зависимостей пакета, хранящийся в
obj/project.assets.json. Содержимое пакета не копируется в любую папку проекта. - Обновите
app.configи/илиweb.config, если пакет использует преобразования файлов исходного кода и конфигурации.
- Для проектов с помощью PackageReference обновите граф зависимостей пакета, хранящийся в
(только Visual Studio) Отображение файла readme пакета, если он доступен, в окне Visual Studio.
Наслаждайтесь продуктивным кодом с помощью пакетов NuGet!