私が達成したいこと: 作成するアセンブリの束を持つ C# ソリューションがあります。ソリューションによって作成されたすべてのアセンブリを含む NuGet パッケージを作成したいと考えています (「ソリューション全体」のパッケージと呼ぶことができます)。パッケージは、含まれているアセンブリのすべての依存関係もインストールする必要があります。
これまでに行ったこと: *.nuspec-file をすべて自分で作成しました (パッケージには完全なソリューションのすべてのアセンブリが含まれている必要があるため、*.csproj アプローチを使用できなかったため)。すべての依存関係が含まれています (短縮された例 - 依存関係グループは使用されていません):
<dependencies>
...
<dependency id=Insight.Itk.x64" version="2.4.8.0" />
<dependency id=Intel.Ipp.x64" version="6.1.2.041" />
...
</dependencies>
NuGet 2.8.1 を使用してパッケージを作成し、ローカルの NuGet サーバーに公開しました。*.nuspec-file 内の依存関係のすべての NuGet パッケージも、そのサーバーで公開されています。
どうしたの?パッケージをインストールすると、NuGet パッケージのアセンブリがインストールされ、パッケージの依存関係からアセンブリがインストールされることを期待していました。最初のものはスムーズに起こりますが、依存パッケージはインストールされていません。コマンドを使用してインストールしようとしました
nuget.exe install packages.config -source http://path-to-nuget-server -o C:\install_path
packages.config には、公開したパッケージのみが含まれています。
パッケージとしてすべてを含む packages.config ファイルと同じコマンドを使用して依存アセンブリをインストールしようとすると、NuGet サーバーからインストールされ、エラー メッセージはまったく表示されません。
いくつかの研究のために(成功せずに)すでに試したことは次のとおりです。
- 同じフォルダー内の依存関係のすべての *.nupkg-files とともに "nuget pack" と呼ばれ、私の *.nuspec-file
- packageSources-Items を含む NuGet.config ファイルをローカル NuGet サーバーに作成しました
多分誰かが私に正しい解決策を教えてくれるでしょうか?パッキング中に何かが足りないようです。または、NuGet がインストール時の依存関係を解決できない可能性があります。