3
にItemGroup内のメタデータの定義の中のよく知られたアイテムのメタデータを参照すると、ここでのMSBuildのスクリプトです:はターゲット
D:\t\File1.txt to dest\File1.txt
D:\t\File2.txt to dest\File2.txt
D:\t\File3.txt to dest\File3.txt
D:\t\File4.txt to dest\File4.txt
しかし、結果は次のとおりです。私はそれから期待
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="AugmentItemGroup" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<ItemGroup>
<ItmGrp Include="File1.txt">
<Dest>dest\%(FileName)%(Extension)</Dest>
</ItmGrp>
<ItmGrp Include="File2.txt">
<Dest>dest\%(FileName)%(Extension)</Dest>
</ItmGrp>
<ItmGrp Include="File3.txt">
<Dest>dest\%(FileName)%(Extension)</Dest>
</ItmGrp>
</ItemGroup>
<Target Name="AugmentItemGroup">
<ItemGroup>
<ItmGrp Include="File4.txt">
<Dest>dest\%(FileName)%(Extension)</Dest>
</ItmGrp>
</ItemGroup>
<Message Text="%(ItmGrp.FullPath) to %(ItmGrp.Dest)" />
</Target>
</Project>
出力されます:
D:\t\File1.txt to dest\File1.txt
D:\t\File2.txt to dest\File2.txt
D:\t\File3.txt to dest\File3.txt
D:\t\File4.txt to dest\File1.txt
D:\t\File4.txt to dest\File2.txt
D:\t\File4.txt to dest\File3.txt
なぜ%(FileName)%(Extension)
よく知られているメタデータreferenの振る舞いがありますItemGroupがターゲットの内部にあるときは、ceは異なりますか?
ターゲット内で「ターゲット外」動作を取得することは可能ですか?
このアプローチの問題は、「dest」部分が項目ごとに異なるため、同じ定義をグループ内のすべての項目に適用できないことです。 – axk
これで、上記の2番目の方法を試してみてください。 Dest vs. _Destの使用に注意を払う –
これは全く別の仕事で私を助けました、ありがとう。また、本のリンクについては、私はそれを購入するつもりです。 –