Руководство. Установка и использование локального средства .NET с помощью .NET CLI
Эта статья относится к: ✔️ пакета SDK для .NET Core 3.0 и более поздних версий
В этом руководстве описано, как установить и использовать локальное средство. Вы используете инструмент, созданный вами в первом руководстве этой серии.
Необходимые условия
Завершите первый урок этой серии.
Установите среду выполнения .NET Core 2.1.
В этом руководстве вы устанавливаете и используете средство, предназначенное для .NET Core 2.1, поэтому на компьютере необходимо установить эту среду выполнения. Чтобы установить среду выполнения 2.1, перейдите на страницу загрузки .NET Core 2.1 и найдите ссылку на установку среды выполнения в столбце Запуск приложений — среда выполнения.
Создание файла манифеста
Чтобы установить средство для локального доступа (только для текущего каталога и подкаталогов), его необходимо добавить в файл манифеста.
В папке microsoft.botsay перейдите на один уровень вверх к папке репозитория.
cd ..
Создайте файл манифеста , выполнив команду dotnet new:
dotnet new tool-manifest
Выходные данные указывают на успешное создание файла.
The template "Dotnet local tool manifest file" was created successfully.
В файле .config/dotnet-tools.json еще нет инструментов.
{
"version": 1,
"isRoot": true,
"tools": {}
}
Средства, перечисленные в файле манифеста, доступны для текущего каталога и подкаталогов. Текущий каталог — это каталог, содержащий каталог .config с файлом манифеста.
При использовании команды CLI, которая ссылается на локальное средство, пакет SDK ищет файл манифеста в текущем каталоге и родительских каталогах. Если он находит файл манифеста, но файл не включает в себя средство, на которое ссылается ссылка, он продолжает поиск по родительским каталогам. Поиск заканчивается, когда он находит инструмент, на который ссылаются, или находит manifest-файл с установленным на true
значением isRoot
.
Установка botsay в качестве локального средства
Установите средство из пакета, созданного в первом руководстве:
dotnet tool install --add-source ./microsoft.botsay/nupkg microsoft.botsay
Эта команда добавляет средство в файл манифеста, созданный на предыдущем шаге. В выходных данных команды показано, в каком файле манифеста находится только что установленное средство:
You can invoke the tool from this directory using the following command:
'dotnet tool run botsay' or 'dotnet botsay'
Tool 'microsoft.botsay' (version '1.0.0') was successfully installed.
Entry is added to the manifest file /home/name/repository/.config/dotnet-tools.json
Теперь в файле .config/dotnet-tools.json есть одно средство:
{
"version": 1,
"isRoot": true,
"tools": {
"microsoft.botsay": {
"version": "1.0.0",
"commands": [
"botsay"
]
}
}
}
Используйте средство
Вызовите средство, выполнив команду dotnet tool run
из папки репозитория:
dotnet tool run botsay hello from the bot
Восстановление локального средства, установленного другими пользователями
Обычно локальное средство устанавливается в корневой каталог репозитория. После регистрации файла манифеста в репозитории другие разработчики могут получить последний файл манифеста. Чтобы установить все средства, перечисленные в файле манифеста, они могут выполнить одну команду dotnet tool restore
.
Откройте файл .config/dotnet-tools.json и замените содержимое следующим кодом JSON:
{ "version": 1, "isRoot": true, "tools": { "microsoft.botsay": { "version": "1.0.0", "commands": [ "botsay" ] }, "dotnetsay": { "version": "2.1.3", "commands": [ "dotnetsay" ] } } }
Сохраните изменения.
Это изменение совпадает с получением последней версии из репозитория после установки пакета
dotnetsay
для каталога проекта.Выполните команду
dotnet tool restore
.dotnet tool restore
Команда создает выходные данные, как показано в следующем примере:
Tool 'microsoft.botsay' (version '1.0.0') was restored. Available commands: botsay Tool 'dotnetsay' (version '2.1.3') was restored. Available commands: dotnetsay Restore was successful.
Убедитесь, что доступны средства:
dotnet tool list
Выходные данные — это список пакетов и команд, аналогичный следующему примеру:
Package Id Version Commands Manifest -------------------------------------------------------------------------------------------- microsoft.botsay 1.0.0 botsay /home/name/repository/.config/dotnet-tools.json dotnetsay 2.1.3 dotnetsay /home/name/repository/.config/dotnet-tools.json
Проверьте средства:
dotnet tool run dotnetsay hello from dotnetsay dotnet tool run botsay hello from botsay
Обновление локального средства
Установленная версия локального средства dotnetsay
— 2.1.3. Используйте команду dotnet tool update для обновления средства до последней версии.
dotnet tool update dotnetsay
Выходные данные указывают новый номер версии:
Tool 'dotnetsay' was successfully updated from version '2.1.3' to version '2.1.7'
(manifest file /home/name/repository/.config/dotnet-tools.json).
Команда обновления находит первый файл манифеста, содержащий идентификатор пакета и обновляющий его. Если такой идентификатор пакета отсутствует в любом файле манифеста, который находится в области поиска, пакет SDK добавляет новую запись в ближайший файл манифеста. Область поиска охватывает движение вверх по родительским каталогам до нахождения манифестного файла с isRoot = true
.
Удалите локальные средства
Удалите установленные средства, выполнив команду: dotnet tool uninstall.
dotnet tool uninstall microsoft.botsay
dotnet tool uninstall dotnetsay
Устранение неполадок
Если вы получите сообщение об ошибке при выполнении руководства, см. статью Устранение проблем с использованием средств .NET.
См. также
Дополнительные сведения см. в средствах .NET.