在“<build_folder>/<tfm>/”中找到至少一个 .<extension> 文件,但“<build_folder>/<tfm>/<package_id>.<extension>”中没有。
<extension> 为以下某一项:targets、props。
<build_folder> 为以下某一项:build、buildTransitive、buildCrossTargeting、buildMultiTargeting。
<tfm> 为目标框架名字对象,或是可能不存在。
<package_id> 为包的包标识符。
示例:
在“build/netstandard2.0/”中找到至少一个 .targets 文件,但“build/netstandard2.0/MyPackage.targets”中没有。
在“build/netstandard2.0/”中找到至少一个 .props 文件,但“build/netstandard2.0/MyPackage.props”中没有。
在“buildTransitive/net472/”中找到至少一个 .props 文件,但“buildTransitive/net472/My.Package.Id.props”中没有。
在“buildMultitargeting/netcoreapp3.0/”中找到至少一个 .targets 文件,但“buildMultitargeting/netcoreapp3.0/Contoso.Utilities. targets”中没有。
在“build/”中找到至少一个 .props 文件,但“build/AdventureWorks.Tools.props”中没有。
问题
包含 MSBuild 属性和目标的包需遵循在 .props 或 .targets 扩展名之前使用包 ID 的命名约定。 未遵循此约定的文件不会导入到使用此包的项目中。
示例:如果包 ID 为 Contoso.Utilities 且包含文件 build/Contoso.Utilities.props 和 build/Utilities.targets,则仅 Contoso.Utilities.props 文件会导入到使用此包的项目中。 NuGet 不会导入 Utilities.targets。
解决方案
将文件重命名以符合此约定。
在以上示例中,build/netstandard2.0/Utilities.targets 应重命名为 build/netstandard2.0/Contoso.Utilities.targets 以便 NuGet 开始导入它。 如果正在 Contoso.Utilities.props 中导入 Utilities.targets,请重命名此文件以使用 .props 扩展名。