【发布时间】:2017-08-08 22:56:38
【问题描述】:
我正在尝试从我的一个项目中创建一个自定义 nuget 包。当我尝试将它安装到引用它的测试项目中时,我收到此错误:
包“包”1.0.5 与 uap10.0.15063 (UAP,Version=v10.0.15063) 不兼容。包“包”1.0.5 支持:net (.NETFramework,Version=v0.0)
显然情况并非如此,因为测试项目可以在引用项目本身时正常运行。
我正在根据我的 nuspec 文件构建 nuget 包:
<?xml version="1.0"?>
<package >
<metadata>
<id>Project</id>
<version>1.0.0</version>
<title>Project</title>
<authors>company</authors>
<owners>company</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>desc</description>
<copyright>cp</copyright>
<dependencies>
<group targetFramework="uap ">
<dependency id="Logging" version="1.0.0" exclude="Build,Analyzers" />
<dependency id="Microsoft.NETCore" version="5.0.0" exclude="Build,Analyzers" />
<dependency id="Microsoft.NETCore.Portable.Compatibility" version="1.0.0" exclude="Build,Analyzers" />
<dependency id="NuGet.Build" version="2.12.0" exclude="Build,Analyzers" />
<dependency id="NuGet.CommandLine" version="4.1.0" exclude="Build,Analyzers" />
</group>
</dependencies>
</metadata>
<files>
<file src="bin\Release\*.dll" target="lib" />
</files>
“Logging”也是我从另一个项目的 .csproj 文件创建的自定义 nuget 包。
我试过删除标签,也试过重命名targetFramework="uap",都不管用。
可能出了什么问题,我可以尝试什么来解决这个问题?
【问题讨论】:
-
你找到解决方案了吗,我遇到了一个非常相似的问题
-
@Corcus 这不是一个完整的答案,但我找到了一种解决方法。我建议在 nuget 项目主页中发布一个错误。他们反应灵敏。所以新版本的 Nuget 应该是基于项目文件而不是 nuspec 文件构建的。这样做为我解决了这个问题。它并不总是把所有事情都做对,但它做的一件事就是解决了这个问题。这样做还有其他问题,但我能够通过其他解决方法解决这些问题。真是一团糟;)
标签: nuget nuget-package nuget-package-restore