Omówienie narzędzia globalnej platformy .NET core.NET Core Global Tools overview

Ten artykuł dotyczy: ✓ zestawu SDK programu .NET Core 2.1This article applies to: ✓ .NET Core 2.1 SDK

.NET Core globalnego narzędzie to specjalne pakietu NuGet, który zawiera aplikację konsolową w języku.A .NET Core Global Tool is a special NuGet package that contains a console application. Narzędzie globalne można zainstalować na komputerze w domyślnej lokalizacji, która jest dostępna w zmiennej środowiskowej PATH lub w lokalizacji niestandardowej.A Global Tool can be installed on your machine on a default location that is included in the PATH environment variable or on a custom location.

Jeśli chcesz użyć narzędzia globalnego .NET Core:If you want to use a .NET Core Global Tool:

  • Zawiera informacje o narzędziu (zazwyczaj witryny sieci Web lub w witrynie github).Find information about the tool (usually a website or GitHub page).
  • Sprawdź, autora i statystyki w miejsce, w którym dla źródła danych (zwykle NuGet.org).Check the author and statistics in the home for the feed (usually NuGet.org).
  • Zainstaluj narzędzie.Install the tool.
  • Wywołuje narzędzie.Call the tool.
  • Zaktualizuj narzędzie.Update the tool.
  • Odinstaluj narzędzie.Uninstall the tool.

Ważne

Narzędzia globalnej platformy .NET core są wyświetlane w zmiennej path i uruchamiać w trybie pełnego zaufania..NET Core Global Tools appear on your path and run in full trust. Nie należy instalować narzędzia globalnej platformy .NET Core, chyba że zaufania do autora.Do not install .NET Core Global Tools unless you trust the author.

Znajdź narzędzie globalne podstawowych platformy .NETFind a .NET Core Global Tool

Obecnie nie ma funkcji wyszukiwania globalnego narzędzia w konsoli .NET Core interfejsu wiersza polecenia (CLI).Currently, there isn't a Global Tool search feature in the .NET Core Command-line Interface (CLI).

Narzędzia programu .NET Core globalnej można znaleźć na NuGet.You can find .NET Core Global Tools on NuGet. Jednak NuGet jeszcze nie dopuszcza do wyszukiwania w szczególności narzędzia globalnej platformy .NET Core.However, NuGet doesn't yet allow you to search specifically for .NET Core Global Tools.

Można również znaleźć zaleceń dotyczących narzędzi do wpisów w blogu lub w natemcmaster/dotnet-tools repozytorium GitHub.You may also find tool recommendations in blog posts or in the natemcmaster/dotnet-tools GitHub repository.

Widać również kod źródłowy dla globalnych narzędzi utworzonych przez zespół programu ASP.NET w aspnet/DotNetTools repozytorium GitHub.You can also see the source code for the Global Tools created by the ASP.NET team at the aspnet/DotNetTools GitHub repository.

Sprawdź, autora i statystykCheck the author and statistics

Ponieważ narzędzia globalnej platformy .NET Core uruchamianie w trybie pełnego zaufania i zwykle są zainstalowane w zmiennej path, może być bardzo wydajne.Since .NET Core Global Tools run in full trust and are generally installed on your path, they can be very powerful. Nie można pobrać narzędzia od osób, którym nie ufasz.Don't download tools from people you don't trust.

Jeśli narzędzie jest obsługiwana dla narzędzia NuGet, możesz sprawdzić autora i statystyki, wyszukując narzędzie.If the tool is hosted on NuGet, you can check the author and statistics by searching for the tool.

Zainstaluj narzędzie globalneInstall a Global Tool

Aby zainstalować narzędzie globalne, należy użyć instalacji narzędzi dotnet polecenia interfejsu wiersza polecenia platformy .NET Core.To install a Global Tool, you use the dotnet tool install .NET Core CLI command. Poniższy przykład pokazuje, jak zainstalować narzędzie do globalnego w lokalizacji domyślnej:The following example shows how to install a Global Tool in the default location:

dotnet tool install -g dotnetsay

Jeśli nie można zainstalować narzędzia, komunikaty o błędach są wyświetlane.If the tool can't be installed, error messages are displayed. Sprawdź, że źródła danych, które miały są sprawdzane.Check that the feeds you expected are being checked.

Jeśli próbujesz zainstalować wersję wstępną lub określoną wersję narzędzia, można określić numeru wersji w następującym formacie:If you're trying to install a pre-release version or a specific version of the tool, you can specify the version number using the following format:

dotnet tool install -g <package-name> --version <version-number>

Jeśli instalacja zakończy się pomyślnie, zostanie wyświetlony komunikat przedstawiający polecenia używane do wywoływania narzędzia i wersją zainstalowaną, podobny do poniższego przykładu:If installation is successful, a message is displayed showing the command used to call the tool and the version installed, similar to the following example:

You can invoke the tool using the following command: dotnetsay
Tool 'dotnetsay' (version '2.0.0') was successfully installed.

Globalne narzędzia można zainstalować w domyślnym katalogu lub w określonej lokalizacji.Global Tools can be installed in the default directory or in a specific location. Domyślne katalogi są następujące:The default directories are:

System operacyjnyOS ŚcieżkaPath
Linux/macOSLinux/macOS $HOME/.dotnet/tools
WindowsWindows %USERPROFILE%\.dotnet\tools

Te lokalizacje są dodawane do ścieżki użytkownika podczas pierwszego uruchomienia zestaw SDK, więc globalnego narzędzia są zainstalowane, może być wywoływana bezpośrednio.These locations are added to the user's path when the SDK is first run, so Global Tools installed there can be called directly.

Należy zauważyć, że globalne narzędzia specyficzne dla użytkownika, nie machine globalnego.Note that the Global Tools are user-specific, not machine global. Są specyficzne dla użytkownika oznacza, że nie można zainstalować narzędzie globalne, która jest dostępna dla wszystkich użytkowników komputera.Being user-specific means you cannot install a Global Tool that is available to all users of the machine. Narzędzie jest dostępne tylko dla każdego profilu użytkownika którym zostało zainstalowane narzędzie.The tool is only available for each user profile where the tool was installed.

Można również zainstalować narzędzia globalnej w określonym katalogu.Global Tools can also be installed in a specific directory. Podczas instalowania w określonym katalogu, użytkownik musi upewnić się polecenie jest dostępne, umieszczając tego katalogu w ścieżce, wywołując polecenie z katalogu, który został określony, lub podczas wywoływania narzędzia z w określonym katalogu.When installed in a specific directory, the user must ensure the command is available, by including that directory in the path, by calling the command with the directory specified, or calling the tool from within the specified directory. W tym przypadku interfejsu wiersza polecenia platformy .NET Core nie powoduje dodania tej lokalizacji automatycznie do zmiennej środowiskowej PATH.In this case, the .NET Core CLI doesn't add this location automatically to the PATH environment variable.

Za pomocą narzędziaUse the tool

Po zainstalowaniu narzędzia można wywoływać ją za pomocą polecenia.Once the tool is installed, you can call it by using its command. Należy zauważyć, że polecenie nie może być taka sama jak nazwa pakietu.Note that the command may not be the same as the package name.

Jeśli polecenie jest dotnetsay, należy wywołać za pomocą:If the command is dotnetsay, you call it with:

dotnetsay

Jeśli autor narzędzie potrzebowała narzędzie, które pojawią się w kontekście dotnet wierszu one napisał ją w taki sposób, nadaj mu dotnet <command>, takich jak:If the tool author wanted the tool to appear in the context of the dotnet prompt, they may have written it in a way that you call it as dotnet <command>, such as:

dotnet doc

Możesz znaleźć, jakie narzędzia są objęte zainstalowanego pakietu narzędzie globalne, wyświetlając listę zainstalowanych pakietów przy użyciu lista narzędzi dotnet polecenia.You can find which tools are included in an installed Global Tool package by listing the installed packages using the dotnet tool list command.

Można także wyszukać instrukcje użycia w witrynie sieci Web narzędzia lub wpisując jedno z następujących poleceń:You can also look for usage instructions at the tool's website or by typing one of the following commands:

<command> --help
dotnet <command> --help

Co można pójdzie nie takWhat could go wrong

Narzędzia globalne są zależny od struktury aplikacji, co oznacza, że opierają się na środowisko uruchomieniowe platformy .NET Core zainstalowana na tym komputerze.Global Tools are framework-dependent applications, which means they rely on a .NET Core runtime installed on your machine. Oczekiwany czas działania nie zostanie znaleziony, należy wykonać normalnego reguły przodu środowisko uruchomieniowe platformy .NET Core takich jak:If the expected runtime is not found, they follow normal .NET Core runtime roll-forward rules such as:

  • Aplikacja przenosi do przodu do najwyższej wersji poprawki określonej wersji głównych i pomocniczych.An application rolls forward to the highest patch release of the specified major and minor version.
  • Jeśli nie ma żadnych pasujących aparatu plików wykonywalnych dopasowania główne i pomocniczy numer wersji, dalej wyższa wersja pomocnicza jest używany.If there is no matching runtime with a matching major and minor version number, the next higher minor version is used.
  • Przenoszenia do przodu nie zachodzi między wersji zapoznawczych środowiska uruchomieniowego lub wersji zapoznawczych i wersji.Roll forward doesn't occur between preview versions of the runtime or between preview versions and release versions. W związku z tym, globalne narzędzia utworzone za pomocą wersji zapoznawczych musi być odbudować i ponowne opublikowanie przez autora i ponownej instalacji.Thus, Global Tools created using preview versions must be rebuilt and republished by the author and reinstalled.
  • Dodatkowe problemy dotyczące za pomocą narzędzi globalnego utworzone w .NET Core 2.1 w wersji zapoznawczej 1.Additional issues can occur with Global Tools created in .NET Core 2.1 Preview 1. Aby uzyskać więcej informacji, zobacz .NET Core 2.1 w wersji zapoznawczej 2 — znane problemy.For more information, see .NET Core 2.1 Preview 2 Known Issues.

Jeśli aplikacja nie może znaleźć odpowiedniego środowiska uruchomieniowego, uruchomienie nie powiedzie się i zgłasza błąd.If an application cannot find an appropriate runtime, it fails to run and reports an error.

Inny problem, który może się zdarzyć, to narzędzie globalne, który został utworzony w starszej wersji zapoznawczej może nie działać z Twojego aktualnie zainstalowanego środowiska uruchomieniowe platformy .NET Core.Another issue that might happen is that a Global Tool that was created during an earlier preview may not run with your currently installed .NET Core runtimes. Możesz zobaczyć, które środowiska uruchomieniowe są zainstalowane na komputerze przy użyciu następującego polecenia:You can see which runtimes are installed on your machine using the following command:

dotnet --list-runtimes

Skontaktuj się z autorem narzędzie globalne i czy można ponownie skompilować i ponownie opublikować ich pakiet narzędzi do narzędzia NuGet ze zaktualizowanym numerem wersji.Contact the author of the Global Tool and see if they can recompile and republish their tool package to NuGet with an updated version number. Po zaktualizowaniu one pakietów dla narzędzia NuGet, należy zaktualizować kopii.Once they have updated the package on NuGet, you can update your copy.

Interfejs wiersza polecenia platformy .NET Core próbuje dodać domyślne lokalizacje do zmiennej środowiskowej PATH na pierwszego użycia.The .NET Core CLI tries to add the default locations to the PATH environment variable on its first usage. Jednak istnieje kilka scenariuszy, w których lokalizacja może nie można dodać do ścieżki automatycznie, takich jak:However, there are a couple of scenarios where the location might not be added to PATH automatically, such as:

  • Jeśli ustawiono DOTNET_SKIP_FIRST_TIME_EXPERIENCE zmiennej środowiskowej.If you've set the DOTNET_SKIP_FIRST_TIME_EXPERIENCE environment variable.
  • W systemie macOS, jeśli została zainstalowana przy użyciu zestawu .NET Core SDK . tar.gz plików i nie .pkg.On macOS, if you've installed the .NET Core SDK using .tar.gz files and not .pkg.
  • W systemie Linux należy edytować plik środowiska powłoki, aby skonfigurować ŚCIEŻKĘ.On Linux, you need to edit the shell environment file to configure the PATH.

Inne polecenia interfejsu wiersza poleceniaOther CLI commands

.NET Core SDK zawiera innych poleceń, które obsługują narzędzia globalnej platformy .NET Core.The .NET Core SDK contains other commands that support .NET Core Global Tools. Użyć dowolnej z dotnet tool poleceń przy użyciu jednego z następujących opcji:Use any of the dotnet tool commands with one of the following options:

  • --global lub -g Określa, że polecenie jest zastosowanie do całej użytkownika narzędzia globalnej.--global or -g specifies that the command is applicable to user-wide Global Tools.
  • --tool-path Określa niestandardową lokalizację dla narzędzia globalnej.--tool-path specifies a custom location for Global Tools.

Aby dowiedzieć się, jakie polecenia są dostępne dla narzędzia globalnej:To find out which commands are available for Global Tools:

dotnet tool --help

Aktualizowanie narzędzie globalne obejmuje odinstalowanie i ponowne zainstalowanie go za pomocą najnowszej stabilnej wersji.Updating a Global Tool involves uninstalling and reinstalling it with the latest stable version. Aby zaktualizować narzędzie globalne, użyj aktualizacji narzędzi dotnet polecenia:To update a Global Tool, use the dotnet tool update command:

dotnet tool update -g <packagename>

Usuń narzędzie globalne przy użyciu narzędzia dotnet odinstalowania:Remove a Global Tool using the dotnet tool uninstall:

dotnet tool uninstall -g <packagename>

Aby wyświetlić wszystkie narzędzia globalnej aktualnie jest zainstalowana na komputerze, wraz z ich wersji i poleceń, użyj lista narzędzi dotnet polecenia:To display all of the Global Tools currently installed on the machine, along with their version and commands, use the dotnet tool list command:

dotnet tool list -g