私はいくつかのコピー操作を実行するmsbuildスクリプトを持っています。MSBuildターゲットでタスク/操作を共有するには?
このターゲットを複製する必要がありますが、XMLの1%だけが異なります。これは実際には、メッセージ、削除、削除されたアイテムグループ、現時点では、1つのタスクを追加するだけです。私は&を全ターゲットに貼り付けたいとは思っていません。むしろ、両方に共通のタスクを実行する共通のターゲットを設定し、特殊な追加を別のターゲットに配置したいと思います。多かれ少なかれ、私はmsbuildに、XMLの内容を私のために各セクションに行動的にコピー/貼り付けさせたいだけです。ここで
は一例です:
<Target Name="Copy Stuff More">
<Copy SourceFiles="@(FILES_STUFF1)" DestinationFolder="$(BASE_DIR)\stuff1"/>
<Copy SourceFiles="@(FILES_STUFF2)" DestinationFolder="$(BASE_DIR)\stuff2"/>
<Copy SourceFiles="@(FILES_STUFF3)" DestinationFolder="$(BASE_DIR)\stuff3"/>
<Copy SourceFiles="@(FILES_STUFF4)" DestinationFolder="$(BASE_DIR)\stuff4"/>
</Target>
どのように私は重複XML片を集中管理することができます
<Target Name="Copy Stuff">
<Copy SourceFiles="@(FILES_STUFF1)" DestinationFolder="$(BASE_DIR)\stuff1"/>
<Copy SourceFiles="@(FILES_STUFF2)" DestinationFolder="$(BASE_DIR)\stuff2"/>
<Copy SourceFiles="@(FILES_STUFF3)" DestinationFolder="$(BASE_DIR)\stuff3"/>
</Target>
は、私は、1つだけ余分Copy
を追加する第二のターゲットを作成する必要がありますか?私はmsbuildバッチ処理について少し読んだけど、それは絶対にとなります。私には意味があります。私はそれが私の問題を解決するとは確信していません。私が見てきたすべての例はメッセージログのものですが、それ以上のことをしています。
これは、インポートされたターゲットにインポートプロジェクトで定義されたプロパティへのアクセスを許可しますか? –
はい、インポートされたターゲットがこのプロパティをリセットしない場合 – Troopers