3

クラス ライブラリを DLL にビルドする MSBuild スクリプトがあります。

ビルドするには、いくつかの dll (つまり、log4net.dll、Elmah.dll など) への参照を含める必要があります。

現時点では、私のビルド ファイルには、次のような各 dll へのパスが含まれています。

<Reference Include="C:\Projects\MillinCommon\Trunk\bin\Debug\log4net.dll" />
<Reference Include="C:\Projects\MillinCommon\Trunk\bin\Debug\Elmah.dll" />
<Reference Include="C:\Projects\MillinCommon\Trunk\bin\Debug\Microsoft.Practices.EnterpriseLibrary.Common.dll" />

etc. etc. etc.

次に、ターゲットに私の CSC があります: References="@(Reference)"

これはかなり退屈になってきています。私がやりたいのは、依存するすべてのdllをファイルシステムのどこかの単一のディレクトリに置き、そのディレクトリへの参照に単一を渡すことです.MSBuildはそのディレクトリに含まれるdllを使用し、必要とします。

これは可能ですか?

4

1 に答える 1

7

1 つのフォルダーのすべてのアイテムを含めるには、参照の include ステートメントでワイルドカードを使用するだけです。

<Reference Include="C:\Projects\MillinCommon\Trunk\bin\Debug\*.dll" />

C:\Projects\MillinCommon\Trunk\bin\**\*.dllフォルダーとそのすべてのサブフォルダーから含めるなど、再帰的なワイルドカードを使用することもできます。

詳細については、「 MSBuild アイテム - ワイルドカードを使用してアイテムを指定する」を参照してください。

于 2012-11-10T07:16:09.143 に答える