【发布时间】:2020-02-16 15:16:38
【问题描述】:
我有一个针对 .NET 4.7.1 库的 DLL。
可能无关紧要,但它是用 C# 编写的,并使用“packages.config”模式而不是较新的 PackageReference 配置来使用 NuGet 包。
我将它作为 NuGet 包发布(已经这样做了好几年了)。但是现在当我执行以下操作时:
nuget pack -Properties Configuration=Release
我收到以下警告:
错误 NU5128:在依赖项中声明了一些目标框架 nuspec 组和 lib/ref 文件夹没有完全匹配 在另一个位置。请参阅以下操作列表: - 为 .NETFramework4.7.1 添加一个依赖组到 nuspec
我在 nuspec 的依赖组中没有任何东西:
<?xml version="1.0"?>
<package >
<metadata>
<id>*******</id>
<version>*******</version>
<title>*******</title>
<authors>*******</authors>
<owners>*******</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>*******</description>
<releaseNotes>*******</releaseNotes>
<copyright>*******</copyright>
<tags>*******</tags>
</metadata>
</package>
这会消耗以下 NuGet 包:
- Microsoft.AspNet.WebApi.Client v5.2.7
- Microsoft.AspNet.WebApi.Core v5.2.7
- Microsoft.CodeAnalysis.FxCopAnalyzers v2.9.8
- Microsoft.CodeAnalysis.VersionCheckAnalyzer v2.9.8
- Microsoft.CodeQuality.Analyzers v2.9.8
- Microsoft.NetCore.Analyzers v2.9.8
- Microsoft.NetFramework.Analyzers v2.9.8
- Newtonsoft.Json v12.0.3
- StyleCop.Analyzers v1.1.118
当我查看参考资料时,我看到以下内容(使用 ~ 来缩短路径):
- Microsoft.CSharp ~.NETFramework\v4.7.1\Microsoft.CSharp.dll
- Newtonsoft.Json ~\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll
- 系统 ~\NETFramework\v4.7.1\System.dll
- System.Configuration ~.NETFramework\v4.7.1\System.Configuration.dll
- System.Core ~.NETFramework\v4.7.1\System.Core.dll
- System.Data ~.NETFramework\v4.7.1\System.Data.dll
- System.Data.DataSetExtensions ~.NETFramework\v4.7.1\System.Data.DataSetExtensions.dll
- System.Net.Http ~.NETFramework\v4.7.1\System.Net.Http.dll
- System.Net.Http.Formatting ~\packages\Microsoft.AspNet.WebApi.Client.5.2.7\lib\net45\System.Net.Http.Formatting.dll
- System.Web.Http ~\packages\Microsoft.AspNet.WebApi.Core.5.2.7\lib\net45\System.Web.Http.dll
- System.Xml ~.NETFramework\v4.7.1\System.Xml.dll
- System.Xml.Linq ~.NETFramework\v4.7.1\System.Xml.Linq.dll
所以在我看来,一切看起来都与 .NET 4.7.1 兼容,那么为什么会出现这个警告呢?
按照NuGet Warning NU5128 中给出的详细信息,我因此添加了一个依赖组:
<?xml version="1.0"?>
<package >
<metadata>
<id>*******</id>
<version>*******</version>
<title>*******</title>
<authors>*******</authors>
<owners>*******</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>*******</description>
<releaseNotes>*******</releaseNotes>
<copyright>*******</copyright>
<tags>*******</tags>
<dependencies>
<group targetFramework=".NETFramework4.7.1" />
</dependencies>
</metadata>
</package>
但这没有效果,我仍然得到错误。
【问题讨论】:
标签: .net nuget nuget-package nuspec