我正在使用Daniel Schroeder的“在每次构建后从项目创建新的NuGet包”NuGet包,通过Visual Studio2013从我的项目中自动创建NuGet包。当在.nuspec文件中指定组依赖关系时,我遇到了一个问题。这是我的.nuspec文件中的内容:
<dependencies>
<group targetFramework=".NETFramework3.5">
<dependency id="BitMiracle.LibTiff.NET" version="2.4.500.0" />
</group>
<group targetFramework=".NETFramework3.5">
<dependency id="FAImage.Net35" version="1.0.0" />
</group>
<group targetFramework="Silverlight5.0">
<dependency id="FAImage.SL50" version="1.0.0" />
</group>
</dependencies>依赖项包含在包中,但它们没有绑定到在.nuspec文件的标记中指定的特定平台。它们都被归类为“非框架特定的”。当通过NuGet包资源管理器创建相同的包时,依赖项是正确的。任何帮助都将不胜感激。
发布于 2015-02-13 22:49:02
我是nuget新手,但你有没有尝试过:
<group targetFramework="net35">
<dependency id="BitMiracle.LibTiff.NET" version="2.4.500.0" />
<dependency id="FAImage.Net35" version="1.0.0" />
</group>
<group targetFramework="sl5">
<dependency id="FAImage.SL50" version="1.0.0" />
</group>发布于 2016-05-26 17:14:11
您的nuspec文件缺少您想要针对的每个框架的<frameworkAssemblies>标记。正如@Patrick指出的,您还需要使用框架别名。
<package>
<metadata>
<!-- snip other data -->
<dependencies>
<group targetFramework="net35">
<dependency id="BitMiracle.LibTiff.NET" version="2.4.500.0" />
<dependency id="FAImage.Net35" version="1.0.0" />
</group>
<group targetFramework="sl5">
<dependency id="FAImage.SL50" version="1.0.0" />
</group>
</dependencies>
<frameworkAssemblies>
<frameworkAssembly assemblyName="System.Core" targetFramework="net35" />
<frameworkAssembly assemblyName="System.Core" targetFramework="sl5" />
</frameworkAssemblies>
</metadata>
</package>https://stackoverflow.com/questions/27256137
复制相似问题