共用方式為


沒有版本的 PackageReference 將引發錯誤

從 .NET 10 開始,NuGet 會在項目沒有指定版本時PackageReference引發NU1015錯誤,而不是先前NU1604的警告

使用中央套件管理時沒有變更,因為根據設計,PackageReference XML 不應該在該案例中具有版本。

推出的版本

.NET 10 Preview 6

先前的行為

先前,NuGet 使用下列文字引發 NU1604 警告:

專案相依性 『PackageA』 不包含內含下限。 請在相依性版本包含下限,以確保還原結果一致。

新行為

從 .NET 10 開始,NuGet 會引發具有下列文字的 NU1015 錯誤:

下列 PackageReference 項目未指定版本:PackageA

破壞性變更的類型

這是 行為變更。

變更的原因

「沒有下限」訊息令人困惑,目前還不清楚如何修正此問題。 此外,NuGet 已還原該套件的最低版本,這很少是開發人員想要的版本。 當版本元數據遺失時,這項變更會提供更清楚且更可行的錯誤訊息。

請在套件參考中新增一個版本,例如:

- <PackageReference Include="Some.Package" />
+ <PackageReference Include="Some.Package" Version="1.2.3" />

如果需要最低套件版本,請使用 Version="0.0.0"。 在此情況下,NuGet 會引發警告 NU1603,而不是先前的 NU1604。

若要還原為先前的警告,您可以將 設定 SdkAnalysisLevel9.0.300 或更低。 不過,這會影響 閘道上 SdkAnalysisLevel的所有功能。

受影響的 API

沒有。