dotnet workload install
Эта статья относится к: ✔️ пакету SDK для .NET 6 и более поздних версий
Имя.
dotnet workload install
— устанавливает дополнительные рабочие нагрузки.
Краткие сведения
dotnet workload install <WORKLOAD_ID>...
[--configfile <FILE>] [--disable-parallel]
[--ignore-failed-sources] [--include-previews] [--interactive]
[--no-cache] [--skip-manifest-update] [--source <SOURCE>]
[--temp-dir <PATH>] [-v|--verbosity <LEVEL>] [--version <VERSION>]
dotnet workload install -?|-h|--help
Description
Команда dotnet workload install
устанавливает одну или несколько дополнительных рабочих нагрузок. Дополнительные рабочие нагрузки можно установить поверх пакета SDK для .NET, чтобы обеспечить поддержку различных типов приложений, таких как .NET MAUI и Blazor WebAssembly AOT.
Когда команда находится в workload-set
режиме обновления, установлены версии рабочей нагрузки:
- Относятся к последнему набору рабочих нагрузок или версии набора рабочих нагрузок, указанной в global.json или
--version
параметре. - Может не быть последней версией каждой отдельной рабочей нагрузки. Например, команда
install
не установит более новый набор рабочей нагрузки, если вы ранее использовали--version
флаг.
Дополнительные сведения см . в наборах рабочих нагрузок пакета SDK для .NET. workload-set
Режим обновления доступен с версии 8.0.400 SDK.
Используйте команду dotnet workload search, чтобы узнать, какие рабочие нагрузки доступны для установки.
Условия для запуска с повышенными правами
Для установок пакета SDK для macOS и Linux, выполненных в защищенном каталоге, эту команду нужно выполнять с повышенными правами (используйте команду sudo
). В Windows эту команду не требуется выполнять с повышенными правами, даже если пакет SDK установлен в каталог Program Files. В Windows команда использует установщики MSI для этого расположения.
Зависимость результатов от версии пакета SDK
Команды dotnet workload
работают в контексте конкретных версий пакета SDK. Предположим, что у вас установлен пакет SDK для .NET 6.0.100 и пакет SDK для .NET 6.0.200. Команды dotnet workload
будут давать разные результаты в зависимости от выбранной версии пакета SDK. Это поведение относится к различиям основного и дополнительного номеров версий и наборов возможностей, а не к различиям версий исправлений. Например, пакеты SDK для .NET 6.0.101 и 6.0.102 дают одинаковые результаты, а пакеты для версий 6.0.100 и 6.0.200 — разные. Версию пакета SDK можно указать с помощью файла global.json.
Оповестительные манифесты
Имена и версии ресурсов, необходимых для установки рабочей нагрузки, хранятся в манифестах. По умолчанию команда dotnet workload install
скачивает последние доступные манифесты перед установкой рабочей нагрузки. Затем локальная копия манифеста предоставляет сведения, необходимые для поиска и скачивания ресурсов для рабочей нагрузки.
Команда dotnet workload list
сравнивает версии установленных рабочих нагрузок с версиями, доступными в данный момент. Если оказывается, что доступна более новая версия, чем установленная, команда объявляет об этом в своих выходных данных. Такие уведомления о более новых версиях в dotnet workload list
доступны начиная с версии .NET 6.
Чтобы реализовать такие уведомления, последние доступные версии манифестов скачиваются и сохраняются в виде оповестительных манифестов. Такие скачивания осуществляются асинхронно в фоновом режиме, когда выполняются любые из указанных ниже команд.
Если команда завершается до окончания скачивания манифеста, скачивание останавливается. Попытка скачивания повторяется при следующем запуске одной из этих команд. Можно задать переменные среды, чтобы отключить такие фоновые скачивания или задать их периодичность. По умолчанию они выполняются не чаще одного раза в день.
Вы можете запретить команде dotnet workload install
скачивать манифесты с помощью параметра --skip-manifest-update
.
Команда dotnet workload update
также скачивает оповестительные манифесты. Эти скачиваемые файлы необходимы для того, чтобы узнать о наличии обновления, поэтому не существует возможности запретить их запуск. Однако можно использовать параметр --advertising-manifests-only
, чтобы пропустить обновления рабочей нагрузки и выполнить только скачивание манифестов. Этот параметр доступен начиная с версии .NET 6.
Аргументы
WORKLOAD_ID
...Один или несколько идентификаторов рабочей нагрузки для установки. Используйте команду dotnet workload search, чтобы узнать, какие рабочие нагрузки доступны.
Параметры
--configfile <FILE>
Файл конфигурации NuGet (nuget.config), который будет использоваться. Если этот параметр указан, будут использоваться только параметры из этого файла. Если не указано, будет использоваться иерархия файлов конфигурации из текущего каталога. Дополнительные сведения см. в статье Распространенные конфигурации NuGet.
--disable-parallel
Блокирует параллельное восстановление нескольких проектов.
-?|-h|--help
Выводит описание использования команды.
--ignore-failed-sources
Обрабатывает сбои источников пакетов как предупреждения.
--include-previews
Разрешает предварительные манифесты рабочей нагрузки.
--interactive
Позволяет команде остановиться и дождаться, пока пользователь выполнит действие или введет данные. Например, чтобы завершить проверку подлинности.
--no-cache
Запрещает кэширование пакетов и HTTP-запросов.
--skip-manifest-update
Пропуск обновления манифестов рабочей нагрузки. Манифесты рабочей нагрузки определяют, какие ресурсы и версии необходимо установить для каждой рабочей нагрузки.
-s|--source <SOURCE>
Указывает URI источника пакета NuGet, который нужно использовать. Этот параметр переопределяет все источники, указанные в файлах nuget.config. Чтобы указать несколько источников, задайте этот параметр несколько раз.
--temp-dir <PATH>
Укажите временный каталог, используемый для загрузки и извлечения пакетов NuGet (должен быть безопасным).
-v|--verbosity <LEVEL>
Задает уровень детализации команды. Допустимые значения:
q[uiet]
,m[inimal]
,n[ormal]
,d[etailed]
иdiag[nostic]
. Значение по умолчанию —minimal
. При указанииdetailed
илиdiagnostic
детализации команда отображает сведения о пакетах Nuget, которые он скачивает.
--version
Версия набора рабочих нагрузок для установки или обновления. Если указать версию набора рабочей нагрузки в global.json, нельзя использовать
--version
параметр для указания версии набора рабочих нагрузок. Чтобы использовать--version
этот параметр в этом случае, выполните команду за пределами пути, содержащего файл global.json. Доступно с версии 8.0.400 SDK. Дополнительные сведения см . в наборах рабочих нагрузок пакета SDK для .NET.
Примеры
Установите рабочую нагрузку
maui
:dotnet workload install maui
Установите рабочие нагрузки
maui-android
иmaui-ios
:dotnet workload install maui-android maui-ios