我正在使用Daniel Schroeder在“每个构建之后的项目中创建新的NuGet包”NuGet包来通过Visual Studio 2013从我的项目中自动创建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包资源管理器创建相同的包时,正确地获取依赖关系。任何帮助将不胜感激。
答案 0 :(得分:1)
我是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>
答案 1 :(得分:1)
您的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>