0

C# で記述された多数のプロジェクトを含むクラス ライブラリがあり、それぞれが相互に参照しています。これは、私が他のプロジェクトと共有している共通のライブラリです。私は最近、ライブラリが共有されるメカニズムを nuget 経由で変更しました。そのため、ライブラリ内のプロジェクトごとに、nuget パッケージを作成するビルド後のイベントがあります。

"$(SolutionDir)\NuGet.exe" pack "$(ProjectPath)" -o "$(SolutionDir)\Packages"

これはうまく機能します。パッケージをファイル構造の共有フォルダーにプッシュし、使用するプロジェクトがそこからパッケージをインストールします。すべてのプロジェクト パッケージがこのフォルダーにプッシュされます。

しかし、私は問題に遭遇しました。私のライブラリがパッケージ X と Y を作成するとしましょう。X はクラス ライブラリで Y への参照を持っています。消費アプリケーションでは、X を使用する必要があります。インストール時に、Y から ddl をインストールしません。パッケージ Y もインストールする必要があります。パッケージ X の作成時にどのようにセットアップすればよいですか。必要な dll も含まれています。明示的にインストールする必要なく、パッケージ Y から?

4

1 に答える 1

2

パッケージ X の nuspec ファイルで、パッケージ Y を依存関係として指定できます

<dependencies>
<dependency id="Y" version="1.0" />
</dependencies>

依存関係に関するその他のオプションは、http://docs.nuget.org/docs/reference/nuspec-reference#Specifying_Dependenciesにあります。

ファイルを指定するには、
<files>
<file src="bin\Debug*.dll" target="lib" />
<file src="bin\Debug*.pdb" target="lib" />

</files を使用できます>
詳細はこちらhttp://docs.nuget.org/docs/reference/nuspec-reference#Specifying_Files_to_Include_in_the_Package

于 2012-12-05T22:58:11.543 に答える