Udostępnij za pośrednictwem


Samouczek: instalowanie i używanie lokalnego narzędzia platformy .NET przy użyciu interfejsu wiersza polecenia platformy .NET

Ten artykuł dotyczy: ✔️ zestawu .NET Core 3.0 SDK i nowszych wersji

W tym samouczku przedstawiono sposób instalowania i używania narzędzia lokalnego. Używasz narzędzia, które tworzysz w pierwszym samouczku tej serii.

Warunki wstępne

  • Ukończ pierwszy samouczek tej serii.

  • Zainstaluj środowisko uruchomieniowe platformy .NET Core 2.1.

    Na potrzeby tego samouczka zainstalujesz i użyjesz narzędzia przeznaczonego dla platformy .NET Core 2.1, więc musisz mieć zainstalowane to środowisko uruchomieniowe na maszynie. Aby zainstalować środowisko uruchomieniowe 2.1, przejdź do strony pobierania platformy .NET Core 2.1 i znajdź link instalacji środowiska uruchomieniowego w kolumnie Uruchamianie aplikacji — środowisko uruchomieniowe.

Tworzenie pliku manifestu

Aby zainstalować narzędzie tylko do dostępu lokalnego (dla bieżącego katalogu i podkatalogów), należy go dodać do pliku manifestu.

Z folderu microsoft.botsay nawiguj w górę o jeden poziom do folderu repozytorium.

cd ..

Utwórz plik manifestu, uruchamiając polecenie dotnet new:

dotnet new tool-manifest

Dane wyjściowe wskazują pomyślne utworzenie pliku.

The template "Dotnet local tool manifest file" was created successfully.

Plik .config/dotnet-tools.json nie ma jeszcze w nim narzędzi:

{
  "version": 1,
  "isRoot": true,
  "tools": {}
}

Narzędzia wymienione w pliku manifestu są dostępne dla bieżącego katalogu i podkatalogów. Bieżący katalog to ten, który zawiera katalog .config z plikiem manifestu.

Gdy używasz polecenia wiersza poleceń, które odwołuje się do narzędzia lokalnego, SDK wyszukuje plik manifestu w bieżącym katalogu i katalogach nadrzędnych. Jeśli znajdzie plik manifestu, ale plik nie zawiera narzędzia, do którego jest odniesienie, kontynuuje wyszukiwanie w górę przez katalogi nadrzędne. Wyszukiwanie kończy się, gdy znajdzie narzędzie, do którego się odwołuje, lub znajdzie plik manifestu z isRoot ustawionym na true.

Instalowanie botsay jako narzędzia lokalnego

Zainstaluj narzędzie z pakietu utworzonego w pierwszym samouczku:

dotnet tool install --add-source ./microsoft.botsay/nupkg microsoft.botsay

To polecenie dodaje narzędzie do pliku manifestu utworzonego w poprzednim kroku. Dane wyjściowe polecenia pokazują, w którym pliku manifestu znajduje się nowo zainstalowane narzędzie:

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

Plik .config/dotnet-tools.json ma teraz jedno narzędzie:

{
  "version": 1,
  "isRoot": true,
  "tools": {
    "microsoft.botsay": {
      "version": "1.0.0",
      "commands": [
        "botsay"
      ]
    }
  }
}

Korzystanie z narzędzia

Wywołaj narzędzie, uruchamiając polecenie dotnet tool run z folderu repozytorium:

dotnet tool run botsay hello from the bot

Przywracanie lokalnego narzędzia zainstalowanego przez inne osoby

Zazwyczaj narzędzie lokalne jest instalowane w katalogu głównym repozytorium. Po zaewidencjonowaniu pliku manifestu w repozytorium, inni programiści mogą pobrać najnowszy plik manifestu. Aby zainstalować wszystkie narzędzia wymienione w pliku manifestu, można uruchomić jedno polecenie dotnet tool restore.

  1. Otwórz plik .config/dotnet-tools.json i zastąp zawartość następującym kodem JSON:

    {
      "version": 1,
      "isRoot": true,
      "tools": {
        "microsoft.botsay": {
          "version": "1.0.0",
          "commands": [
            "botsay"
          ]
        },
        "dotnetsay": {
          "version": "2.1.3",
          "commands": [
            "dotnetsay"
          ]
        }
      }
    }
    
  2. Zapisz zmiany.

    Wprowadzenie tej zmiany jest takie samo jak pobranie najnowszej wersji z repozytorium po zainstalowaniu przez inną osobę pakietu dotnetsay dla katalogu projektu.

  3. Uruchom polecenie dotnet tool restore.

    dotnet tool restore
    

    Polecenie generuje dane wyjściowe podobne do następującego przykładu:

    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.
    
  4. Sprawdź, czy narzędzia są dostępne:

    dotnet tool list
    

    Dane wyjściowe to lista pakietów i poleceń, podobnie jak w poniższym przykładzie:

    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
    
  5. Przetestuj narzędzia:

    dotnet tool run dotnetsay hello from dotnetsay
    dotnet tool run botsay hello from botsay
    

Aktualizowanie narzędzia lokalnego

Zainstalowana wersja lokalnego narzędzia dotnetsay to 2.1.3. Użyj polecenia dotnet tool update, aby zaktualizować narzędzie do najnowszej wersji.

dotnet tool update dotnetsay

Dane wyjściowe wskazują nowy numer wersji:

Tool 'dotnetsay' was successfully updated from version '2.1.3' to version '2.1.7'
(manifest file /home/name/repository/.config/dotnet-tools.json).

Polecenie update znajduje pierwszy plik manifestu zawierający identyfikator pakietu i aktualizuje go. Jeśli w żadnym pliku manifestu nie ma takiego identyfikatora pakietu, który znajduje się w zakresie wyszukiwania, zestaw SDK dodaje nowy wpis do najbliższego pliku manifestu. Zakres wyszukiwania jest rozwijany przez katalogi nadrzędne do momentu znalezienia pliku manifestu z isRoot = true.

Usuwanie narzędzi lokalnych

Usuń zainstalowane narzędzia, uruchamiając polecenie dotnet tool uninstall:

dotnet tool uninstall microsoft.botsay
dotnet tool uninstall dotnetsay

Rozwiązywanie problemów

Jeśli podczas wykonywania samouczka zostanie wyświetlony komunikat o błędzie, zobacz Rozwiązywanie problemów z użyciem narzędzi platformy .NET.

Zobacz też

Aby uzyskać więcej informacji, zobacz .NET tools.