チュートリアル: .NET CLI を使用して .NET ローカル ツールをインストールして使用する
この記事は、.NET Core 3.0 SDK 以降のバージョン ✔️ に適用されます
このチュートリアルでは、ローカル ツールをインストールして使用する方法について説明します。 このシリーズ の最初のチュートリアルで作成したツールを使用します。
前提 条件
このシリーズ の最初のチュートリアルを完了します。
.NET Core 2.1 ランタイムをインストールします。
このチュートリアルでは、.NET Core 2.1 を対象とするツールをインストールして使用するため、そのランタイムをコンピューターにインストールする必要があります。 2.1 ランタイムをインストールするには、.NET Core 2.1 のダウンロード ページ に移動し、[アプリの実行 - ランタイム] 列にあるランタイム インストール リンクを見つけます。
マニフェスト ファイルを作成する
ローカル アクセス専用のツール (現在のディレクトリとサブディレクトリの場合) をインストールするには、マニフェスト ファイルに追加する必要があります。
microsoft.botsay フォルダーから、リポジトリ フォルダーに 1 レベル上に移動します。
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 は現在のディレクトリと親ディレクトリ内のマニフェスト ファイルを検索します。 マニフェスト ファイルが見つかるが、ファイルに参照先ツールが含まれていない場合は、親ディレクトリを介して検索が続行されます。 検索は、参照先ツールが見つかるか、isRoot
が true
に設定されたマニフェスト ファイルを見つけたときに終了します。
ローカル ツールとして 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 ファイルに 1 つのツールが含まれるようになりました。
{
"version": 1,
"isRoot": true,
"tools": {
"microsoft.botsay": {
"version": "1.0.0",
"commands": [
"botsay"
]
}
}
}
ツールを使用する
リポジトリ フォルダーから dotnet tool run
コマンドを実行して、ツールを呼び出します。
dotnet tool run botsay hello from the bot
他のユーザーがインストールしたローカル ツールを復元する
通常、ローカル ツールはリポジトリのルート ディレクトリにインストールします。 マニフェスト ファイルをリポジトリにチェックインすると、他の開発者は最新のマニフェスト ファイルを取得できます。 マニフェスト ファイルに一覧表示されているすべてのツールをインストールするには、1 つの 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).
update コマンドは、パッケージ ID を含む最初のマニフェスト ファイルを検索して更新します。 検索のスコープ内にあるマニフェスト ファイルにそのようなパッケージ ID がない場合、SDK は最も近いマニフェスト ファイルに新しいエントリを追加します。 isRoot = true
を含むマニフェスト ファイルが見つかるまで、検索スコープは親ディレクトリを介して稼働します。
ローカル ツールを削除する
dotnet tool uninstall コマンドを実行して、インストールされているツールを削除します。
dotnet tool uninstall microsoft.botsay
dotnet tool uninstall dotnetsay
トラブルシューティング
チュートリアルの実行中にエラー メッセージが表示される場合は、「.NET ツールの使用に関する問題のトラブルシューティング を参照してください。
関連項目
.NET