いくつかのJavaScriptファイルを縮小するカスタムMSBuildタスクがあります。私はItemGroup
を作成して、どのファイルを縮小するかを定義しました。アイテムグループの除外を複数の行に分割するにはどうすればよいですか?
<ItemGroup>
<JS Include="**\*.js" Exclude="**\*.min.js;obj\**\*.*;**\_references.js;[snip]" />
</ItemGroup>
私は(切り取ら部分が長く、将来的に長くなる可能性が)読みやすくするためのいくつかの行にその財産を分割したいので、私はこれを試してみました:
私は私の.csproj
ファイルに次のように持っています
<ItemGroup>
<JS Include="**\*.js" Exclude="**\*.min.js" />
<JS Exclude="obj\**\*.*" />
<JS Exclude="**\_references.js" />
[snip]
</ItemGroup>
しかし、それは私にこのビルドエラーを与えた:私は空がそれらのその後のエルに(Include=""
)を含ん追加したとき
error MSB4066: The attribute "Exclude" in element <JS> is unrecognized.
同じことが起こりましたements。 (引用符の内側に何かを置くと、エラーが削除されますが、JS varに余分な「ファイルを」含まれていた。)私は、Exclude
属性は、同じ要素でInclude
属性によって追加された項目に影響を与えthe docs for MSBuild Itemsから学んだ
。
私もこのように、複数行に自分自身を文字列を一つだけExclude
文字列を使用しますが、分割してみました:大丈夫に見えますが、
<ItemGroup>
<JS Include="**\*.js"
Exclude="**\*.min.js;
obj\**\*.*;
**\_references.js;
[snip]" />
</ItemGroup>
私は、その後のVisual Studioからプロジェクト、行末を保存するときそれはこのようになって、マングルされた:
<ItemGroup>
<JS Include="**\*.js" Exclude="**\*.min.js;
 obj\**\*.*;
 **\_references.js;
 [snip]" />
</ItemGroup>
(これはビルドに何かを破るが、複数行に文字列を分割する目的に反していませんでした。)
これらの除外を複数行に分割するにはどうすればよいですか?