Dotnetup nasıl çalışır?

Note

dotnetup genel önizleme aşamasındadır. Özellikleri ve davranışı genel kullanılabilirlik öncesinde değişebilir.

dotnetup, istediğiniz şeyi yüklediği dosyalardan ayırır. Bu model, birkaç gereksinimin bir .NET yüklemesini paylaşmasına ve dotnetup artık gerekli olmayan dosyaları kaldırmasına olanak tanır.

Kurulum kökleri

.NET yükleme kökü, dotnetup takip ettiği bir dizindir. Yükleme kökü şunlara sahiptir:

  • Tam nitelikli dizin yolu.
  • Mimari: x86, x64veya arm64.
  • channels olarak belirtilen sıfır veya daha fazla yükleme belirtimi.
  • Sıfır veya daha fazla somut kurulum.

Geçerli CLI, çalışan dotnetup işlemin mimarisine uygun olarak yüklenir. Arkitektür seçeneği yoktur.

Varsayılan dotnetup tarafından yönetilen .NET yükleme kökü, dotnetup veri dizininin dotnet alt dizinidir:

Platform Varsayılan yükleme kökü
Windows %LOCALAPPDATA%\dotnetup\dotnet
macOS ~/Library/Application Support/dotnetup/dotnet
Linux $XDG_DATA_HOME/dotnetup/dotnet, veya XDG_DATA_HOME ayarlanmadığında ~/.local/share/dotnetup/dotnet

--install-path kullanarak başka bir yükleme kökü seçin. Açık yükleme yolu, global.json içindeki yola göre önceliklidir; bu yol da varsayılan yükleme köküne göre önceliklidir.

dotnetup, /usr/share/dotnet veya Program Files\dotnet gibi sistem tarafından yönetilen bir .NET dizinine yazmaz.

Bileşenler

dotnetup şu bileşen türlerini yönetir:

Component Çalışma zamanı belirtim adı Yüklü içerik
.NET SDK Uygulanamaz SDK, host, çalışma zamanı, hedefleme paketleri ve ilgili SDK içeriği
.NET çalışma zamanı runtime Microsoft.NETCore.App runtime
ASP.NET Core çalışma zamanı aspnetcore Microsoft.AspNetCore.App çalışma zamanı
Windows Masaüstü Çalışma Zamanı windowsdesktop Microsoft.WindowsDesktop.AppWindows çalışma zamanı

ASP.NET Core diğer adı aspnet ve Windows Desktop diğer adı desktop, çalışma zamanı bileşeni belirtimlerinde kabul edilir.

Kurulum özellikleri

Kurulum belirtimi, bir bileşeni ve kanalı veya tam sürümü kaydeder. Örneğin, sdk 10.0.1xx belirtimi "en son SDK'yı 10.0.1xx özellik bandında tut" anlamına gelir.

Kanallar ve sürümler desteklenen farklı kanal ve sürüm türleri hakkında daha fazla bilgi edinebilirsiniz.

Her özellik bu kaynaklardan birinden gelir:

  • Explicit: Komut satırında kanalı veya sürümü sağladınız.
  • GlobalJson: dotnetup SDK gereksinimini bir global.json dosyadan türetdi.

All bir kaldırma filtresidir. Spesifikasyon kaynağı olarak depolanmaz.

Belirli bir sürüm sabitlenmiş bir belirtimdir. Güncelleştirme komutları bunu ilerletmez. Kanal belirtimi, güncelleştirme sırasında daha yeni bir sürüme çözümlenebilir.

Kurulumlar ve paylaşılan dosyalar

Kurulum, somut bir bileşen sürümünü ve kullandığı alt bileşen dizinlerini kaydeder. İki spesifikasyon aynı kuruluma çözümlenebilir.

Kaldırma komutları önce eşleşen özellikleri kaldırır. Daha sonra çöp toplama, kalan her özellik ile eşleşen en yeni yüklü sürümü tutar. Bir kurulumu ve paylaşılmayan alt bileşenlerini yalnızca artık hiçbir spesifikasyon bunlara ihtiyaç duymadığında kaldırır.

İzlenen ve izlenmeyen kurulumlar

Varsayılan olarak, bir yükleme komutu belirtimini ve sonucunu manifest dosyasına kaydeder. İzlenen bir yükleme, dotnetup tarafından listelenebilir, güncelleştirilebilir ve kaldırılabilir.

Bu --untracked seçeneği dosyaları kayda almadan yükler. dotnetup bu dosyaları listelemez, güncelleştirmez veya kaldırmaz. Bu seçeneği yalnızca hedef dizine başka bir işlem sahip olduğunda kullanın.

Yanlışlıkla karıştırmayı önlemek için hedef, seçili manifestoda olmayan mevcut bir .NET yüklemesi içeriyorsa izlenen yükleme başarısız olur. Farklı bir dizin seçin, var olan yüklemeyi kaldırın veya --untracked seçeneğini kullanın.

Durum bilgisi dosyaları

dotnetup veri dizini şu kullanıcı düzeyi durum dosyalarını içerir:

Dosya Purpose
dotnetup_manifest.json Yükleme köklerini, kurulum özelliklerini, yüklemeleri ve paylaşılan alt bileşenleri izler.
dotnetup_manifest.json.sha256 dotnetup'ın yazmadığı manifest içeriğinde yapılan değişiklikleri algılar.
dotnetup.config.json .NET erişim modunu ve dizinin dotnetup üzerinde olup olmadığını depolar.

Bu dosyaları düzenlemeyin. İlgili durumu değiştirmek için update, uninstall, env ve dotnetup install komutlarını kullanın.

DOTNET_DOTNETUP_DATA_DIR ortam değişkeni veri dizinini değiştirir. --manifest-path seçeneği yalnızca bir komut tarafından kullanılan manifest dosyasını değiştirir. Yapılandırma dosyasını veya varsayılan yükleme kökünü değiştirmez.

Eşzamanlı işlemler

Yükleme, güncelleştirme, kaldırma, listeleme ve çöp toplama iş akışları, paylaşılan yükleme durumuna erişimi koordine eder. Çeşitli spesifikasyonları kabul eden bir komut, yüklemeden önce bunları çözümler ve bunları eşzamanlı olarak indirebilir. Manifest değişiklikleri serileştirilmiş olarak kalır.

Ayrıca bkz.