我有ANT脚本将.js文件压缩成自己的文件,但我想将所有.js文件压缩成一个.js文件。
如何使用下面的ANT脚本使其工作。
<echo message="Compressing Javascript files at location: ${build.root}/resources/js/*.js" />
<java jar="c:/dev/lib/yuicompressor-2.4.7/build/yuicompressor.jar" fork="true">
<arg value="${build.root}/resources/js/*.js" /> <!-- input path for JS files -->
<!--<arg value="-v" /> --><!-- Turn on verbose -->
<arg value="-o" />
<arg value="'.js$:.js'" />
<arg value="${build.root}/resources/js/*.js" /> <!-- output path for JS files -->
<classpath>
<pathelement location="c:/dev/lib/yuicompressor-2.4.7/build/yuicompressor.jar"/>
</classpath>
</java>
答案 0 :(得分:1)
经过长时间的搜索,我得到了解决方案,基本上在yui compress之后我必须对所有压缩文件进行连接。
使用:
<concat destfile="build/*.js">
<fileset dir="build/*" includes="*js" />
</concat>
答案 1 :(得分:-1)
<target name="minify" description="Minifiy a set of files">
<available file="build-lib/YUIAnt.jar" property="YUIANT_AVAILABLE" />
<fail unless="YUIANT_AVAILABLE" message="Run jar target to generate the required task" />
<taskdef name="yuicompress" classname="com.yahoo.platform.yui.compressor.YUICompressTask">
<classpath>
<pathelement path="build-lib/yuicompressor-2.4.2.jar" />
<pathelement path="build-lib/YUIAnt.jar" />
</classpath>
</taskdef>
<mkdir dir="dist\js" />
<yuicompress linebreak="300" warn="false" munge="yes" preserveallsemicolons="true" outputfolder="${dist}">
<fileset dir="WebRoot">
<include name="**/*.js" />
<exclude name="**/jquery.js" />
</fileset>
</yuicompress>
<yuicompress linebreak="300" warn="false" munge="yes" preserveallsemicolons="true" outputfolder="${dist}">
<fileset dir="WebRoot/">
<include name="**/*.css" />
</fileset>
</yuicompress>
</target>