希望用msbuild实现谷歌关闭.我找到了一些解决方案,但努力让它发挥作用.关于如何在构建期间读取多个js文件并创建.min版本的任何建议?
谢谢
编辑:从下面的答案,我能够进行一些改动,以完全实现所推荐的,但在一个简单的形式这里是我写的:
<ItemGroup>
<JSMin Include="$(OutputPath)Scripts\*.js"/>
</ItemGroup>
<Target Name="AfterBuild" Inputs="@(JSMin)" Outputs="@(JSMin ->'%(Directory)%(Filename).min%(Extension)')">
<Exec Command="java -jar C:\temp\compiler.jar --js %(JSMin.Identity) --js_output_file C:\temp\%(JSMin.Filename).min.js"/>
</Target>
Run Code Online (Sandbox Code Playgroud)
稍后输出路径将更改为动态路径.
非常感谢
我没有看过Google Closure,但你可以通过<Exec>任务运行任何命令:
<Project DefaultTargets="build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="build">
<Exec Command="echo Hello world"/>
</Target>
</Project>
Run Code Online (Sandbox Code Playgroud)
编辑:对一组文件运行命令:
<Project DefaultTargets="build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<JSMin Include="jquery.js"/>
<JSMin Include="somethingelse.js"/>
</ItemGroup>
<Target Name="build" Inputs="@(JSMin)" Outputs="@(JSMin->'%(Directory)%(Filename).min%(Extension)')">
<Exec Command="java -jar C:\temp\compiler.jar --js %(JSMin.Identity) --js_output_file %(JSMin.Directory)%(JSMin.Filename).min%(JSMin.Extension)"/>
</Target>
</Project>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
526 次 |
| 最近记录: |