dotnet run
的 -p
選項已淘汰
-p
已不再作為 --project
的縮寫,而且使用 -p
會產生警告。
此警告來自 CLI 剖析器,因此當警告視為錯誤時通常不會導致失敗。 不過,若您的處理序包裝 MSBuild 或 CI,且會檢查文字「Warning」,該項檢查將會出現警告。
導入的版本
.NET SDK 6.0.100
舊的行為
在舊版 .NET 中,-p
表示 --project
。
新的行為
自 .NET 6 起,將 -p
傳遞至 dotnet run
會產生警告,表示其已淘汰,應改用完整的 --project
選項。 雖然發出警告,-p
仍是 --project
的有效縮寫。
變更原因
由於 dotnet run
與 dotnet build
及 dotnet publish
關聯緊密,因此我們要淘汰 -p
。 這項重大變更是讓縮寫符合這些命令的第一步。 如需詳細資訊,請參閱 在 'dotnet run' 中解析 '-p' 的規格。
建議的動作
若您遇到新的警告,請使用 --project
。 若有包含 =
的專案引數,且您使用 -p
縮寫,選項將會解譯為 --property
。
檢閱使用 dotnet run
的任何指令碼,若使用 -p
,您可能會忽略警告。
若有任何指令碼使用 dotnet run
並處理輸出,則可能遭遇中斷。 若未發生錯誤,dotnet run
通常不會輸出任何內容,因此您只會取得執行中程式的輸出。 若有指令碼或其他程式包裝 dotnet run
並剖析輸出,則警告會是非預期的文字,且可能導致失敗。
受影響的 API
N/A