假设我有以下解决方案,其中包含多个针对不同框架的相同代码的版本,并且我想从中生成nuget包。
SharedLib.sln
SharedLib.Net35.csproj
packages.config
SharedLib.Net40.csproj
packages.config
SharedLib.Phone.csproj
packages.config
SharedLib.SL4.csproj
packages.config
预期的 nupkg 具有以下结构
SharedLib.1.0.nupkg
lib/net35/SharedLib.dll
lib/net40/SharedLib.dll
lib/sl4-wp/SharedLib.dll
lib/sl4/SharedLib.dll
nuget.exe pack SharedLib.SL4.csproj
会自动确定目标框架为SilverLight4,并将二进制文件放置在lib/sl4
中。
我知道我可以添加一个SharedLib.SL4.nuspec
文件,并使用<file>
部分来包含其他项目的二进制文件,但是否有一种方法可以让nuget自动将组合解决方案输出放入正确的结构中(并从所有项目中检测packages.config中的依赖项?