.NET araçlarını yönetme

Bu makale şunlar için geçerlidir: ✔️ .NET Core 2.1 SDK ve sonraki sürümler.

.NET aracı, konsol uygulaması içeren özel bir NuGet paketidir. Makinenize aşağıdaki yollarla bir araç yükleyebilirsiniz:

  • Genel bir araç olarak.

    Araç ikili dosyaları, PATH ortam değişkenine eklenen varsayılan dizine yüklenir. Aracı, konumunu belirtmeden makinedeki herhangi bir dizinden çağırabilirsiniz. Bir aracın bir sürümü makinedeki tüm dizinler için kullanılır.

  • Özel bir konumda (araç yolu aracı olarak da bilinir) genel bir araç olarak.

    Araç ikili dosyaları, belirttiğiniz bir konuma yüklenir. Aracı yükleme dizininden, dizine komut adını vererek veya dizini PATH ortam değişkenine ekleyerek çağırabilirsiniz. Bir aracın bir sürümü makinedeki tüm dizinler için kullanılır.

  • Yerel bir araç olarak (.NET Core SDK 3.0 ve sonraki sürümler için geçerlidir).

    Araç ikili dosyaları varsayılan dizine yüklenir. Aracı yükleme dizininden veya alt dizinlerinden herhangi birinden çağırabilirsiniz. Farklı dizinler aynı aracın farklı sürümlerini kullanabilir.

    .NET CLI, bir dizine yerel olarak yüklenen araçları izlemek için bildirim dosyalarını kullanır. Bildirim dosyası bir kaynak kod deposunun kök dizinine kaydedildiğinde, katkıda bulunan depoyu kopyalayabilir ve bildirim dosyalarında listelenen tüm araçları yüklemek için tek bir .NET CLI komutu çağırabilir.

Önemli

.NET araçları tam güven içinde çalışır. Yazara güvenmiyorsanız bir .NET aracı yüklemeyin.

.NET Snap aracılığıyla yüklendiyse .NET araçları düzgün çalışmayabilir.

Araç bulma

Araçları bulmanın bazı yolları şunlardır:

Yazarı ve istatistikleri denetleme

.NET araçları tam güven içinde çalıştığından ve genel araçlar PATH ortam değişkenine eklendiğinden güçlü olabilir. Güvenmediğiniz kişilerden araç indirmeyin.

Araç NuGet'te barındırılıyorsa, aracı arayarak yazarı ve istatistikleri de kontrol edebilirsiniz.

Genel araç yükleme

Bir aracı genel araç olarak yüklemek için aşağıdaki örnekte gösterildiği gibi dotnet tool install seçeneğini --globalkullanın-g:

dotnet tool install -g dotnetsay

Çıktı, aşağıdaki örneğe benzer şekilde aracı ve yüklü sürümü çağırmak için kullanılan komutu gösterir:

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

Not

Varsayılan olarak yüklenecek .NET ikili dosyalarının mimarisi şu anda çalışan işletim sistemi mimarisini temsil eder. Farklı bir işletim sistemi mimarisi belirtmek için bkz . dotnet tool install, --arch option.

Aracın ikili dosyalarının varsayılan konumu işletim sistemine bağlıdır:

OS Yol
Linux/macOS $HOME/.dotnet/tools
Windows %USERPROFILE%\.dotnet\tools

Bu konum, SDK ilk kez çalıştırıldığında kullanıcının yoluna eklenir. Bu nedenle genel araçlar, araç konumu belirtilmeden herhangi bir dizinden çağrılabilir.

Araç erişimi makine geneli değil kullanıcıya özgüdür. Genel bir araç yalnızca aracı yükleyen kullanıcı tarafından kullanılabilir.

Özel bir konuma genel araç yükleme

Bir aracı özel bir konuma genel araç olarak yüklemek için aşağıdaki örneklerde gösterildiği gibi dotnet tool install seçeneğini kullanın--tool-path:

Windows'da:

dotnet tool install dotnetsay --tool-path c:\dotnet-tools

Linux veya macOS'ta:

dotnet tool install dotnetsay --tool-path ~/bin

.NET SDK'sı bu konumu PATH ortam değişkenine otomatik olarak eklemez. Araç yolu aracını çağırmak için aşağıdaki yöntemlerden birini kullanarak komutun kullanılabilir olduğundan emin olmanız gerekir:

  • Yükleme dizinini PATH ortam değişkenine ekleyin.
  • Çağırdığınızda aracın tam yolunu belirtin.
  • Aracı yükleme dizininden çağırın.

Yerel araç yükleme

.NET Core 3.0 SDK ve üzeri için geçerlidir.

Yalnızca yerel erişim için bir araç yüklemek istiyorsanız (geçerli dizin ve alt dizinler için), aracı bir araç bildirim dosyasına eklemeniz gerekir. Araç bildirim dosyası oluşturmak için komutunu dotnet new tool-manifest çalıştırın:

dotnet new tool-manifest

Bu komut ,config dizini altında dotnet-tools.json adlı bir bildirim dosyası oluşturur. Bildirim dosyasına yerel bir araç eklemek için dotnet tool install komutunu kullanın ve aşağıdaki örnekte gösterildiği gibi ve --tool-path seçeneklerini atlayarak--global:

dotnet tool install dotnetsay

Komut çıktısı, aşağıdaki örneğe benzer şekilde yeni yüklenen aracın hangi bildirim dosyasında bulunduğunu gösterir:

You can invoke the tool from this directory using the following command:
dotnet tool run dotnetsay
Tool 'dotnetsay' (version '2.1.4') was successfully installed.
Entry is added to the manifest file /home/name/botsay/.config/dotnet-tools.json.

Aşağıdaki örnekte iki yerel araç yüklü bir bildirim dosyası gösterilmektedir:

{
  "version": 1,
  "isRoot": true,
  "tools": {
    "botsay": {
      "version": "1.0.0",
      "commands": [
        "botsay"
      ]
    },
    "dotnetsay": {
      "version": "2.1.3",
      "commands": [
        "dotnetsay"
      ]
    }
  }
}

Genellikle deponun kök dizinine yerel bir araç eklersiniz. Bildirim dosyasını depoya iade ettikten sonra, depodan kodu kullanıma alan geliştiriciler en son bildirim dosyasını alır. Bildirim dosyasında listelenen tüm araçları yüklemek için şu komutu çalıştırır dotnet tool restore :

dotnet tool restore

Çıkış, geri yüklenen araçları gösterir:

Tool 'botsay' (version '1.0.0') was restored. Available commands: botsay
Tool 'dotnetsay' (version '2.1.3') was restored. Available commands: dotnetsay
Restore was successful.

Belirli bir araç sürümünü yükleme

Bir yayın öncesi sürümü veya aracın belirli bir sürümünü yüklemek için, aşağıdaki örnekte gösterildiği gibi seçeneğini kullanarak --version sürüm numarasını belirtin:

dotnet tool install dotnetsay --version 2.1.3

Tam sürüm numarasını belirtmeden aracın yayın öncesi sürümünü yüklemek için seçeneğini kullanın --version ve aşağıdaki örnekte gösterildiği gibi bir joker karakter girin:

dotnet tool install --global dotnetsay --version "*-rc*"

Araç kullanma

Bir aracı çağırmak için kullandığınız komut, yüklediğiniz paketin adından farklı olabilir. Geçerli kullanıcının makinede yüklü olan tüm araçlarını görüntülemek için dotnet tool list komutunu kullanın:

dotnet tool list

Çıktı, aşağıdaki örneğe benzer şekilde her aracın sürümünü ve komutunu gösterir:

Package Id      Version      Commands       Manifest
-------------------------------------------------------------------------------------------
botsay          1.0.0        botsay         /home/name/repository/.config/dotnet-tools.json
dotnetsay       2.1.3        dotnetsay      /home/name/repository/.config/dotnet-tools.json

Yukarıdaki örnekte gösterildiği gibi, listede yerel araçlar gösterilir. Genel araçları görmek için seçeneğini kullanın --global . Araç yolu araçlarını görmek için seçeneğini kullanın --tool-path .

Belirli bir aracı listelemek için dotnet tool list <PACKAGE_ID> komutunu kullanın:

dotnet tool list dotnetsay

Çıkış, yalnızca aşağıdaki örneğe benzer şekilde yüklüyse bu aracı listeler:

Package Id      Version      Commands       Manifest
-------------------------------------------------------------------------------------------
dotnetsay       2.1.3        dotnetsay      /home/name/repository/.config/dotnet-tools.json

Genel bir araç çağırma

Genel araçlar için araç komutunu tek başına kullanın. Örneğin, komut veya dotnet-docisedotnetsay, genel aracı çağırmak için bunu kullanırsınız:

dotnetsay
dotnet-doc

Komut ön ekiyle dotnet-başlıyorsa, aracı çağırmanın alternatif bir yolu, komutu kullanmak dotnet ve araç komut ön ekini atlamaktır. Örneğin, komutu ise dotnet-docaşağıdaki komut aracı çağırır:

dotnet doc

Ancak, aşağıdaki senaryoda genel bir aracı çağırmak için komutunu kullanamazsınız dotnet :

  • Genel bir araç ve yerel bir araç, ile dotnet-ön ekli aynı komuta sahiptir.
  • Genel aracı yerel aracın kapsamındaki bir dizinden çağırmak istiyorsunuz.

Bu senaryoda yerel dotnet docdotnet dotnet-doc aracı çağırın. Genel aracı çağırmak için komutunu tek başına kullanın:

dotnet-doc

Araç yolu aracı çağırma

seçeneği kullanılarak tool-path yüklenen genel bir aracı çağırmak için, komutun bu makalenin önceki bölümlerinde açıklandığı gibi kullanılabilir olduğundan emin olun.

Yerel araç çağırma

Yerel bir aracı çağırmak için yükleme dizininden komutunu kullanmanız dotnet gerekir. Aşağıdaki örneklerde gösterildiği gibi uzun formu (dotnet tool run <COMMAND_NAME>) veya kısa formu (dotnet <COMMAND_NAME> ) kullanabilirsiniz:

dotnet tool run dotnetsay
dotnet dotnetsay

Komutun ön eki dotnet-varsa, aracı çağırırken ön eki ekleyebilir veya atlayabilirsiniz. Örneğin, komutu ise dotnet-doc, aşağıdaki örneklerden herhangi biri yerel aracı çağırır:

dotnet tool run dotnet-doc
dotnet dotnet-doc
dotnet doc

Aracı güncelleştirme

Bir aracın güncelleştirilmesi, aracın en son kararlı sürümle kaldırılmasını ve yeniden yüklenmesini içerir. Aracı güncelleştirmek için dotnet tool update komutunu, aracı yüklemek için kullandığınız seçenekle kullanın:

dotnet tool update --global <packagename>
dotnet tool update --tool-path <packagename>
dotnet tool update <packagename>

Yerel bir araç için SDK, paket kimliğini içeren ilk bildirim dosyasını bulmak için geçerli dizine ve üst dizinlere bakar. Herhangi bir bildirim dosyasında böyle bir paket kimliği yoksa SDK, en yakın bildirim dosyasına yeni bir giriş ekler.

Aracı kaldırma

Aracı yüklemek için kullandığınız seçenekle dotnet tool uninstall komutunu kullanarak bir aracı kaldırın:

dotnet tool uninstall --global <packagename>
dotnet tool uninstall --tool-path <packagename>
dotnet tool uninstall <packagename>

Yerel bir araç için SDK, paket kimliğini içeren ilk bildirim dosyasını bulmak için geçerli dizine ve üst dizinlere bakar.

Yardım alma ve sorun giderme

Bir araç yüklenemezse veya çalıştırılamazsa bkz . .NET aracı kullanım sorunlarını giderme. Parametresini kullanarak kullanılabilir dotnet tool komutların ve parametrelerin --help listesini alabilirsiniz:

dotnet tool --help

Araç kullanım yönergelerini almak için aşağıdaki komutlardan birini girin veya aracın web sitesine bakın:

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

Ayrıca bkz.