NuGet 警告 NU5129

'<build_folder>/<tfm>/' に少なくとも 1 つの .<extension> ファイルが見つかりましたが、'<build_folder>/<tfm>/<package_id>.<extension>' は見つかりませんでした。

<extension>は、targetspropsのいずれかです。 <build_folder>は、buildbuildTransitivebuildCrossTargetingbuildMultiTargetingのいずれかです。 <tfm>は、ターゲット フレームワーク モニカーである、または存在しない可能性があります。 <package_id>は、パッケージのパッケージ識別子です。

例 :

'build/netstandard2.0/' で少なくとも 1 つの .targets ファイルが見つかりましたが、'build/netstandard2.0/MyPackage.targets' では見つかりませんでした。

'build/netstandard2.0/' で少なくとも 1 つの .props ファイルが見つかりましたが、'build/netstandard2.0/MyPackage.props' では見つかりませんでした。

'buildTransitive/net472/' で少なくとも 1 つの .props ファイルが見つかりましたが、'buildTransitive/net472/My.Package.Id.props' では見つかりませんでした。

'buildMultitargeting/netcoreapp3.0/' で少なくとも 1 つの .targets ファイルが見つかりましたが、'buildMultitargeting/netcoreapp3.0/Contoso.Utilities. target' では見つかりませんでした。

'build/' で少なくとも 1 つの .props ファイルが見つかりましたが、'build/AdventureWorks.Tools.props' では見つかりませんでした。

問題点

MSBuild のプロパティおよびターゲットを含むパッケージは、.propsまたは.targets拡張情報の前に、パッケージ ID の使用において名前付け規則に従う必要があります。 この規則に従わないファイルは、パッケージを使用するプロジェクトにインポートされなくなりました。

例: パッケージ IDContoso.Utilitiesであり、ファイルbuild/Contoso.Utilities.propsbuild/Utilities.targetsが含まれている場合、パッケージを使用するプロジェクトにContoso.Utilities.propsファイルのみがインポートされます Utilities.targets は NuGet によってインポートされなくなりました。

解決策

規則に合うようにファイルの名前を変更します。

上記の例では、NuGet でインポートを開始するには、build/netstandard2.0/Utilities.targetsの名前をbuild/netstandard2.0/Contoso.Utilities.targetsに変更する必要があります。 Utilities.targetsContoso.Utilities.propsにインポートされている場合は、ファイルの名前を.props拡張子を使用するように変更します。