无效的 .nuspec 文件:不支持目标框架`Unsupported,Version=v0.0`
Invalid .nuspec file: target framework `Unsupported,Version=v0.0` is not supported
很尴尬地问了一些有据可查的问题,但我在推送 NuGet 包时遇到了一个错误:
System.AggregateException: One or more errors occurred. --->
System.Net.Http.HttpRequestException: Response status code does not
indicate success: 400 (The NuGet package contains an invalid .nuspec
file. The error encountered was: 'The target framework
Unsupported,Version=v0.0 is not supported.'. Correct the error and try again.).
我使用 VSTS NuGet 任务将程序包推送到 NuGet.org,它提供了上述错误。没有任何定制,只有默认设置:
在我的 nuspec 文件中,我列出了依赖项,简化示例:
<dependencies>
<group targetFramework="netcoreapp">
<dependency id="Microsoft.NETCore.App" version="2.0.0" exclude="Build,Analyzers" />
</group>
<group targetFramework="net462" />
<group targetFramework="netstandard1.0" />
</dependencies>
我假设我的 targetFramework
设置不正确,但根据文档 NuGet Target Frameworks。我尝试了像 netstandard
和 netcoreapp2.0
这样的目标框架,它们都会导致同样的问题。
我的包文件:
<files>
<file src="bin\MINE.Core.dll" target="lib\netcoreapp\MINE.Core.dll" />
<file src="bin\MINE.Core.NetFX.dll" target="lib\net462\MINE.Core.NetFX.dll" />
<file src="bin\MINE.Core.PCL.dll" target="lib\netstandard1.0\MINE.Core.PCL.dll" />
<file src="readme.core.txt" target="" />
</files>
如果我将 dependencies
部分留空 (<dependencies />
),除了软件包没有列出我想要包含的依赖项外,一切都运行良好。此外,如果我不使用组,因此不针对框架,但列出所有依赖包,一切正常。
任何解决这个(可能是愚蠢的)问题的提示都将不胜感激。
发布定义不是问题,构建定义才是问题。当要推送的 NuGet 包被打包时,确保使用正确的 NuGet 版本。
例如,用于打包的 VSTS 中已弃用的 NuGet Packager 任务在内部使用旧版本的 NuGet。因此,用推荐的 NuGet 任务替换 VSTS 任务可以解决问题,并且 NuGet.org 不会再抱怨不正确的 nuspec 文件。
很尴尬地问了一些有据可查的问题,但我在推送 NuGet 包时遇到了一个错误:
System.AggregateException: One or more errors occurred. ---> System.Net.Http.HttpRequestException: Response status code does not indicate success: 400 (The NuGet package contains an invalid .nuspec file. The error encountered was: 'The target framework Unsupported,Version=v0.0 is not supported.'. Correct the error and try again.).
我使用 VSTS NuGet 任务将程序包推送到 NuGet.org,它提供了上述错误。没有任何定制,只有默认设置:
在我的 nuspec 文件中,我列出了依赖项,简化示例:
<dependencies>
<group targetFramework="netcoreapp">
<dependency id="Microsoft.NETCore.App" version="2.0.0" exclude="Build,Analyzers" />
</group>
<group targetFramework="net462" />
<group targetFramework="netstandard1.0" />
</dependencies>
我假设我的 targetFramework
设置不正确,但根据文档 NuGet Target Frameworks。我尝试了像 netstandard
和 netcoreapp2.0
这样的目标框架,它们都会导致同样的问题。
我的包文件:
<files>
<file src="bin\MINE.Core.dll" target="lib\netcoreapp\MINE.Core.dll" />
<file src="bin\MINE.Core.NetFX.dll" target="lib\net462\MINE.Core.NetFX.dll" />
<file src="bin\MINE.Core.PCL.dll" target="lib\netstandard1.0\MINE.Core.PCL.dll" />
<file src="readme.core.txt" target="" />
</files>
如果我将 dependencies
部分留空 (<dependencies />
),除了软件包没有列出我想要包含的依赖项外,一切都运行良好。此外,如果我不使用组,因此不针对框架,但列出所有依赖包,一切正常。
任何解决这个(可能是愚蠢的)问题的提示都将不胜感激。
发布定义不是问题,构建定义才是问题。当要推送的 NuGet 包被打包时,确保使用正确的 NuGet 版本。
例如,用于打包的 VSTS 中已弃用的 NuGet Packager 任务在内部使用旧版本的 NuGet。因此,用推荐的 NuGet 任务替换 VSTS 任务可以解决问题,并且 NuGet.org 不会再抱怨不正确的 nuspec 文件。