2016-06-17 8 views
2

これまでは、nuspecファイル(nuget pack myproj.nuspec)でナゲットパックを呼び出しました。私は(nuget pack myproj.csproj)へのコールを切り替えるので、私たちは常に、時代遅れの明示的な依存関係が自動生成されただろう

<package> 
    <metadata> 
    <version>$version$</version> 
    [more properties] 
    <dependencies> 
     <dependency id="MySubProj" version="$version$" /> 
     [more explicit dependencies] 
    </dependencies> 
    </metadata> 
</package> 

:nuspecはこのような何かを見ました。

すべてがMySubProjの正しいバージョンも1.2.3.4になりますが、今、完成nuspecが

<package> 
    <metadata> 
    <version>1.2.3.4</version> 
    [more properties] 
    <dependencies> 
     <dependency id="MySubProj" version="0.0.0.0" /> 
     [more explicit dependencies] 
    </dependencies> 
    </metadata> 
</package> 

のようなものである以外、素晴らしい作品。

詳細に関する情報:

  • MySubProjは、それが別nugetパッケージ
  • MySubProjのnugetパッケージのバージョンならびにバンドルのバージョンにバンドルされ
  • 同じ溶液中のプロジェクトでありますdllは正しいです。

直接csproj対nuspecを使用しているとき、私は本当に間違ってやっていると、なぜそれがうまくいくものを得ることはありません:nuspecと組み合わせるcsprojを使用している間/

答えて

1

は非常に古いバグのように思えます(これはまだそこNuGet 3.5)である...

この作業を行う一つの方法は、

<package> 
    <metadata> 
    <version>$version$</version> 
    [more properties] 
    <dependencies> 
     <dependency id="MySubProj" version="$PackageVersion$" /> 
     [more explicit dependencies] 
    </dependencies> 
    </metadata> 
</package> 

そして、あなたのコマンド更新の余分なプロパティを追加することである

NuGet.exe pack myproject.csproj -Version 1.2.3.4 -Properties "PackageVersion=1.2.3.4" 

清潔ではありませんが、機能します。

+0

これは期待どおりです。ありがとう :) – FrankyBoy

関連する問題