次の方法で共有


バージョンのない PackageReference でエラーが発生する

.NET 10 以降では、NU1015項目に以前のPackageReference警告ではなくバージョンが指定されていない場合、NuGet によってNU1604 エラーが発生します。

パッケージの全体管理を使用する場合、PackageReference XML にはそのシナリオでバージョンを含める必要がないため、変更はありません。

導入されたバージョン

.NET 10

以前の動作

以前は、NuGet で次のテキストを含む NU1604 警告が発生しました。

プロジェクトの依存関係 'PackageA' には、包括的な下限はありません。 Include a lower bound in the dependency version to ensure consistent restore results. (警告 NU1604: プロジェクト依存関係 Microsoft.AspNetCore.App には下限が含まれていません。復元結果に一貫性が与えられるように、依存関係バージョンに下限を追加してください。)

新しい動作

.NET 10 以降、NuGet は次のテキストで NU1015 エラーを発生させます。

次の PackageReference 項目にバージョンが指定されていません: PackageA

破壊的変更の種類

これは動作の 変化です。

変更の理由

"下限なし" というメッセージは混乱を招き、問題を解決する方法が不明でした。 さらに、NuGet はそのパッケージの最小バージョンを復元しました。これは、開発者が望むものはほとんどありません。 この変更により、バージョン メタデータが見つからない場合に、より明確で実用的なエラー メッセージが表示されます。

パッケージ参照にバージョンを追加します。次に例を示します。

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

最小パッケージ バージョンが必要な場合は、 Version="0.0.0"を使用します。 この場合、NuGet は以前の NU1604 ではなく、警告 NU1603 を発生させます。

前の警告に戻すには、 SdkAnalysisLevel9.0.300 以下に設定できます。 ただし、これは、 SdkAnalysisLevelにゲートするすべてのフィーチャに影響します。

影響を受ける API

なし。