2014-12-02 59 views
1

我使用“由每个构建后的项目创建新的NuGet包”Daniel Schroeder的NuGet包自动创建NuGet包从我的项目通过Visual Studio 2013.当在.nuspec文件中指定组依赖关系时遇到问题。这是我在我的.nuspec文件:NuGet - 在使用“在每个构建后创建新的NuGet包”包时在.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包资源管理器创建相同的包时,依赖关系正确地被采集。任何帮助将不胜感激。

回答

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> 
0

你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>