從 .NET 11 開始,.NET SDK CLI 預設啟用其由 NativeAOT 編譯的指令處理快速路徑,適用於所有平台。 這條路徑由 DOTNET_CLI_ENABLEAOT 環境變數控制,預設狀態會從停用變為啟用。 常見 dotnet 的調用,如命令列解析、 --version、 --info,以及越來越多的內建與外部指令,皆由原生入口點處理,該入口點會透明地退回到管理式 CLI 處理未處理的部分。
所推出的版本
.NET 11 預覽版 7
以前的行為
之前,NativeAOT CLI 快速路徑在所有平台上預設都是關閉的。 除非 DOTNET_CLI_ENABLEAOT 明確設定為真實值(true, 1, yes, 或 on),否則每個 dotnet 調用都由管理的 CLI 處理。
新行為
從 .NET 11 開始,NativeAOT CLI 快速路徑預設在所有平台(Windows、macOS 和 Linux)都開啟。 支援的指令由原生處理,任何不支援的指令則透明地退回到受管理的 CLI。 要選擇退出並將每個調用路由到受管理的 CLI,請設定DOTNET_CLI_ENABLEAOT為假值:false、0no或 off。
破壞性變更的類型
此變更為行為變更。
變更原因
現在原生指令處理路徑已與受管理 CLI 達到同等標準,預設啟用 CLI 提供廣泛的實務測試,並提升常用指令的 CLI 啟動效能。
建議的動作
原生路徑設計上與受管理的 CLI 行為相同,且不需操作。 若發現行為差異,設定環境變數 DOTNET_CLI_ENABLEAOT=false (或 0、 no、 off或 )退出,並將所有調用路由至受管理 CLI。 將差異報告於 https://github.com/dotnet/sdk/issues。
受影響的 API
None.