Note
dotnetup 目前為公開預覽版。 其特性與行為可能會在正式上市前改變。
dotnetup是一個跨平台工具鏈管理器,用於使用者層級的 .NET 安裝。 它可以安裝、更新並移除 .NET SDK 和執行環境,無需使用系統套件管理器。
Prerequisites
以下作業系統與架構之一:
作業系統 Architectures Windows 作業系統 x64、Arm64 macOS x64、Arm64 Linux (glibc) x64、Arm64 Linux(musl),例如 Alpine Linux x64、Arm64 一個終端機。
在 macOS 或 Linux 上用 Bash,或在 Windows 上用 PowerShell 來執行下載腳本。
在 macOS 或 Linux 上,使用
curl或wget下載檔案,並使用sha512sum或shasum驗證檔案。
dotnetup其作業系統需求與 .NET 執行時相同。
關於作業系統特定需求,請參見「在 Windows 安裝 .NET」、「在 macOS 安裝 .NET」或「在 Linux 上安裝 .NET」。
Important
在 Windows 上,預設設定使用everywhere存取模式。 這個模式:
- 需要提升權限才能更新系統
PATH。 - 讓 dotnetup 管理的安裝優先於全機 .NET 安裝,例如 Visual Studio 安裝的那些。 需要全機 SDK 或執行環境,且該 SDK 或執行環境也未隨
dotnetup安裝的專案和應用程式,將無法建置或執行。 - 變更系統
PATH,這適用於所有使用者。 其他使用者啟動的升格程序可能會從你的使用者設定檔載入 .NET。
為避免這些影響,請在設定時選擇 none 或 shell 存取模式。
如果你選擇 everywhere,當安裝程式提示時,就遷移你現有的安裝。 詳情請參見 「Everywhere」模式的考量。
下載 dotnetup
下載腳本預設會安裝最新的 preview 建置版本。 他們會用 SHA-512 校驗碼驗證下載的執行檔,然後安裝到 ~/.dotnetup 中。
在 macOS 或 Linux 上,執行:
curl -fsSL https://aka.ms/dotnetup/get-dotnetup.sh | bash
在 Windows 上,執行:
irm https://aka.ms/dotnetup/get-dotnetup.ps1 | iex
要在 macOS 或 Linux 上安裝最新版本 daily ,請執行:
curl -fsSL https://aka.ms/dotnetup/get-dotnetup.sh |
bash -s -- --quality daily
要在 Windows 上安裝最新版本daily,請執行:
iex "& { $(irm https://aka.ms/dotnetup/get-dotnetup.ps1) } -Quality daily"
Important
每日建置尚未完成釋出驗證,且未進行程式碼簽署。 每日建置只用於短期測試。
腳本會列印指示,將 dotnetup 加入 PATH。 套用指示後再開啟新的終端機。
執行首次設定
執行互動式設定:
> dotnetup init
Welcome to dotnetup!
SDK Channel: latest
Mode: <recommended-mode> (Suggested)
<recommended-mode> modifies <configuration-target> to set PATH and DOTNET_ROOT to prefer <install-path>.
Would you like to install .NET with the recommended settings?
> Yes, proceed with defaults and install
Installing SDK <resolved-version> to <install-path>...
<download and installation progress>
Installed at <install-path>:
SDK <resolved-version>
<mode-specific environment guidance>
Setup complete!
路徑、進度顯示和環境指引會依你的系統和所選模式而定。
在 Windows 上,建議的存取模式是 everywhere。 在 macOS 和 Linux 上,當 dotnetup 偵測到受支援的 shell 時,為 shell,否則為 none。
選擇 「否,自訂設定」 以選擇 SDK 通道、存取模式和遷移選項。
選擇 SDK 通道
SDK 頻道會告訴 dotnetup 應安裝哪個 SDK,以及如何更新它。
| 頻道表單 | Example | Result |
|---|---|---|
| 最新穩定版 | latest |
最新有效的穩定 SDK |
| 最新 LTS | lts |
最新目前穩定的 LTS SDK |
| 最新預覽 | preview |
最新預覽 SDK |
| 每日最新內容 | daily |
最新可用的每日版 SDK |
| 主要 | 10 |
指定主版本的最新 SDK |
| 主要與次要 | 10.0 |
指定主版與次要版的最新 SDK |
| 功能區 | 10.0.1xx |
指定 feature band 中的最新 SDK |
| 確切版本 | 10.0.103 |
只有指定的 SDK 版本 |
| 沒有初始 SDK | none |
設定時跳過安裝 |
更新期間,精確指定的版本不會變動。 如需查看所有可接受的形式,請參見 dotnetup 通道和版本。
選擇如何存取 .NET
存取模式控制終端機與應用程式如何找到由 dotnetup 管理的 .NET 安裝。
| 存取模式 | 行為 |
|---|---|
none |
不會修改這些環境變數。 以 dotnetup dotnet 執行 .NET。 |
shell |
修改 shell 設定檔以設定這些環境變數。 從該 shell 啟動的程序使用 dotnetup 安裝的 .NET SDK 和執行時。 |
everywhere |
修改系統 PATH 並設定使用者層級 DOTNET_ROOT 的環境變數。 僅適用於 Windows。 |
如需更多關於 everywhere 模式的詳細資訊與考量,請參閱 dotnetup 環境設定。
遷移現有安裝項目
Setup 可以提供將現有的全機 .NET SDK 與執行時安裝遷移到 dotnetup 管理的安裝中。 請參閱 Everywhere 模式的考量,了解為什麼遷移在 everywhere 模式下特別重要。
驗證設定
由於設定會變更環境,請在完成設定後開啟新的終端機。
無論是 shell 模式還是 everywhere 模式,請執行:
dotnet --version
dotnetup list
對於 none 模式,執行:
dotnetup dotnet -- --version
dotnetup list
再次執行 dotnetup init 以變更設定。