本文適用於: ✔️ .NET 10 SDK 和更新版本
名稱
dotnet package update - 更新專案中參考的套件。
概要
dotnet package update [<packages>...]
[--interactive] [--project <path>]
[--verbosity <level>] [--vulnerable]
dotnet package update -h|--help
Description
此指令會 dotnet package update 更新專案所使用的套件。
如果已啟用 NuGetAudit ,它也可以嘗試自動將具有已知弱點的更新套件更新為已修正版本。
警告作為錯誤
dotnet package update 會隱含還原,以檢查產生的套件圖形是否沒有錯誤。
Using --vulnerable 也會執行隱含還原,以尋找 NuGetAudit 警告。
不過,如果您的專案使用 WarningsAsErrors 或 TreatWarningsAsErrors,NuGet 的還原警告可能會導致還原失敗,導致更新無法完成。
建議您利用 MSBuild 條件和環境變數作為因應措施,直到實作 此功能要求 為止。
例如,在您的專案中設置 <TreatWarningsAsErrors Condition=" '$(CustomCondition)' == ''>true</TreatWarningsAsErrors> ,然後在大多數 Linux 和 Mac shell 上您可以執行 CustomCondition=true dotnet package update。
在 Windows 命令提示字元和 PowerShell 上,您必須設定環境變數、執行 dotnet 套件更新,然後將環境變數取消設定為三個個別的命令。
Arguments
packages要更新的套件的選用清單。 當未提供任何套件時,命令會嘗試更新專案所參考的所有套件。 套件可以是套件名稱,後面接著 和
@版本號碼。 例如,dotnet package update Contoso.Utilities或dotnet package update Contoso.Utilities@3.2.1。 如果未提供任何版本,它會尋找已設定套件來源上可用的最高版本。
選項
-
--interactive允許命令停止並等候使用者輸入或動作。 例如,若要完成驗證。
--project <path>應該更新套件的專案。 如果提供目錄,它會在目錄中搜尋專案和解決方案檔案。 預設為目前的工作目錄。
-
-v|--verbosity <LEVEL>設定命令的詳細資訊層級。 允許的值為
q[uiet]、m[inimal]、n[ormal]、d[etailed]和diag[nostic]。 如需詳細資訊,請參閱LoggerVerbosity。 --vulnerable如果還原報告任何套件具有已知漏洞,則此命令將升級這些套件。 使用此選項會將套件升級至高於目前參考版本且沒有任何已知弱點的最低版本。
-
-?|-h|--help輸出有關如何使用命令的說明。
範例
將專案中的所有套件更新為可用的最高版本
dotnet package updateUpdating outdated packages in S:\src\test\update\ConsoleApp1. ConsoleApp1: Updated Microsoft.Extensions.Configuration 9.0.0 to 9.0.9. Updated Microsoft.Extensions.DependencyInjection 9.0.0 to 9.0.9. Updated 2 packages in 7 scanned packages.將 Contoso.Utilities 更新為可用的最高版本,並將 Fabrikam.WebApi 更新至 1.2.3 版
dotnet package update Contoso.Utilities Fabrikam.WebApi@1.2.3Updating outdated packages in S:\src\test\update\ConsoleApp1. ConsoleApp1: Updated Contoso.Utilities 2.3.1 to 2.4.6. Updated Fabrikam.WebApi 1.0.2 to 1.2.3. Updated 2 packages in 2 scanned packages.更新具有已知弱點的套件
dotnet package update --vulnerableUpdating packages with security advisories in S:\src\test\update\ConsoleApp1 ConsoleApp1: Updating System.Text.Json 8.0.0 to 8.0.5. Updated 1 packages in 31 scanned packages.