【发布时间】:2010-09-08 20:27:09
【问题描述】:
我在我的 csproj 中定义了一个 AfterCompile 目标,其中涉及缩小和组合 JS 和 CSS。然后我将它们添加到 ItemGroup Content 并删除不必要的文件,但是 Remove 参数似乎不起作用。
<Target Name="AfterCompile">
<ItemGroup>
<JS_Combine Include="js\c??.*.min.js" />
<CSS_Combine Include="css\c??.*.min.css" />
</ItemGroup>
<!-- Combine JS -->
<ReadLinesFromFile File="%(JS_Combine.Identity)">
<Output TaskParameter="Lines" ItemName="JSLines" />
</ReadLinesFromFile>
<WriteLinesToFile File="js\combined.min.js" Lines="@(JSLines)" Overwrite="true" />
<!-- Combine CSS -->
<ReadLinesFromFile File="%(CSS_Combine.Identity)">
<Output TaskParameter="Lines" ItemName="CSSLines" />
</ReadLinesFromFile>
<WriteLinesToFile File="css\combined.min.css" Lines="@(CSSLines)" Overwrite="true" />
<!-- Tidy up -->
<ItemGroup>
<Content Include="js\combined.min.js" />
<Content Include="css\combined.min.css" />
<Content Remove="@(JS_Combine)" />
<Content Remove="@(CSS_Combine)" />
</ItemGroup>
<!-- DEBUG message -->
<Message Text="DEBUG: @(Content)" Importance="high" />
</Target>
调试消息仍然显示 @(Content) 包含不必要的 js 文件。谁能告诉我发生了什么?
【问题讨论】:
标签: msbuild