我正在尝试从我的一个项目中创建一个自定义的nuget包。当我尝试将其安装到引用它的测试项目中时,收到以下错误:
Package 1.0.5与uap10.0.15063 (UAP,Version=v10.0.15063)不兼容。Package "package“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”,但都不起作用。
可能出了什么问题,我该怎么做才能让它正常工作?
发布于 2017-08-10 01:23:22
目标不仅仅依赖于dll文件,它还依赖于C#项目和NuSpec本身。请转至:
Project> Rightclick> Properties> TargetFramework>
将其设置为.Net或其他值。此外,如果可行,请将输出类型更改为控制台应用程序,而不是windows应用程序。
另外,您应该使用以下命令创建nuspec文件:
Nuget规范< ProjectPath >
这使我们可以只更改.csproj文件的元数据,并自动将其复制到包元数据中。
我不能百分之百确定这是否能解决它,但这应该是需要做的。祝你好运!
https://stackoverflow.com/questions/45579217
复制相似问题