Jak działa dotnetup

Uwaga

dotnetup jest dostępna w publicznej wersji zapoznawczej. Jego funkcje i zachowanie mogą ulec zmianie przed ogólną dostępnością.

dotnetup oddziela to, o co prosisz, od plików, które instaluje. Ten model umożliwia kilku składnikom współużytkowanie jednej instalacji .NET i umożliwia usuwanie dotnetup plików, które nie są już wymagane.

Katalogi główne instalacji

Katalog główny instalacji .NET to katalog, który dotnetup śledzi. Katalog główny instalacji ma:

  • W pełni określona ścieżka katalogu.
  • Architektura: x86, x64lub arm64.
  • Zero lub większa liczba specyfikacji instalacji, określona jako channels.
  • Zero lub więcej konkretnych instalacji.

Bieżąca instalacja CLI jest przeznaczona dla architektury uruchomionego dotnetup procesu. To nie ma opcji architektury.

Domyślnym katalogem głównym instalacji .NET zarządzanym przez dotnetup jest dotnet podkatalog katalogu danych dotnetup:

Platform Domyślny katalog główny instalacji
Windows %LOCALAPPDATA%\dotnetup\dotnet
macOS ~/Library/Application Support/dotnetup/dotnet
Linux $XDG_DATA_HOME/dotnetup/dotnetlub ~/.local/share/dotnetup/dotnet , gdy XDG_DATA_HOME nie jest ustawiona

Użyj polecenia --install-path , aby wybrać inny katalog główny instalacji. Jawna ścieżka instalacji ma pierwszeństwo przed ścieżką z global.json, która ma pierwszeństwo przed domyślnym katalogiem głównym instalacji.

dotnetup nie zapisuje w katalogu .NET zarządzanym przez system, takim jak Program Files\dotnet lub /usr/share/dotnet.

Składniki

dotnetup zarządza następującymi typami składników:

Component Nazwa specyfikacji uruchomieniowej Zainstalowane treści
Pakiet SDK dla platformy .NET Nie dotyczy Zestaw SDK, host, środowisko uruchomieniowe, pakiety targetingu i powiązana zawartość zestawu SDK
środowisko uruchomieniowe .NET runtime Microsoft.NETCore.App runtime
środowisko uruchomieniowe ASP.NET Core aspnetcore Microsoft.AspNetCore.App runtime
środowisko uruchomieniowe Windows Desktop windowsdesktop Microsoft.WindowsDesktop.Appśrodowisko uruchomieniowe w Windows

Aliasy aspnet ASP.NET Core i alias desktop Windows Desktop są akceptowane w specyfikacjach składników środowiska uruchomieniowego.

Specyfikacje instalacji

Specyfikacja instalacji rejestruje składnik i kanał lub dokładną wersję. Na przykład specyfikacja zestawu SDK dla 10.0.1xx oznacza „zachowaj najnowszy zestaw SDK w paśmie funkcji 10.0.1xx”.

Więcej informacji na temat różnych rodzajów obsługiwanych kanałów i wersji można uzyskać w temacie Kanały i wersje.

Każda specyfikacja ma jedno z następujących źródeł:

  • Explicit: Podano kanał lub wersję w wierszu polecenia.
  • GlobalJson: dotnetup wyprowadził(a) wymaganie zestawu SDK z pliku global.json.

All jest filtrem odinstalowywania. Nie jest on przechowywany jako źródło specyfikacji.

Dokładnie określona wersja jest przypiętą specyfikacją. Polecenia aktualizacji go nie przesuwają. Specyfikacja kanału może wskazywać na nowszą wersję podczas aktualizacji.

Instalacje i pliki udostępnione

Instalacja rejestruje jedną konkretną wersję składnika i katalogi podskładnikowe, których używa. Dwie specyfikacje mogą prowadzić do tej samej instalacji.

Polecenia odinstalowywania najpierw usuwają zgodne specyfikacje. Odśmiecanie zachowuje najnowszą zainstalowaną wersję zgodną z każdą z pozostałych specyfikacji. Usuwa instalację i jej niewspółdzielone podskładniki tylko wtedy, gdy żadna z pozostałych specyfikacji ich nie wymaga.

Śledzone i nieśledzone instalacje

Domyślnie polecenie install zapisuje swoją specyfikację i wynik w manifeście. Śledzona instalacja może być wyświetlana na liście, aktualizowana i usuwana przez program dotnetup.

Opcja --untracked instaluje pliki bez ich rejestrowania. dotnetup nie wyświetla, nie aktualizuje ani nie usuwa tych plików. Użyj tej opcji tylko wtedy, gdy inny proces jest właścicielem katalogu docelowego.

Aby zapobiec przypadkowemu pomieszaniu, instalacja śledzona kończy się niepowodzeniem, jeśli system docelowy zawiera istniejącą instalację .NET, która nie znajduje się w wybranym manifeście. Wybierz inny katalog, usuń istniejącą instalację lub użyj polecenia --untracked.

Pliki stanu

Katalog danych dotnetup zawiera następujące pliki stanu na poziomie użytkownika:

Plik Purpose
dotnetup_manifest.json Śledzi katalogi głównych instalacji, specyfikacje instalacji, instalacje i współdzielone składniki.
dotnetup_manifest.json.sha256 Wykrywa zmiany w zawartości manifestu, których nie zapisał dotnetup.
dotnetup.config.json Przechowuje tryb dostępu .NET i określa, czy katalog dotnetup znajduje się na PATH.

Nie edytuj tych plików. Użyj poleceń dotnetup install, update, uninstall i env, aby zmienić powiązany stan.

Zmienna DOTNET_DOTNETUP_DATA_DIR środowiskowa zmienia katalog danych. Opcja --manifest-path zmienia tylko manifest używany przez jedno polecenie. Nie zmienia pliku konfiguracji ani domyślnego katalogu głównego instalacji.

Operacje współbieżne

Przepływy pracy instalacji, aktualizacji, dezinstalacji, wyświetlania listy i odśmiecania koordynują dostęp do współdzielonego stanu instalacji. Polecenie, które akceptuje kilka specyfikacji, rozwiązuje je przed instalacją i może pobrać je współbieżnie. Zmiany manifestu pozostają w formie sekwencyjnej.

Informacje dodatkowe