现在的位置: 首页 > 综合 > 正文

ant和yuicompressor 压缩css、js方案

2018年04月01日 ⁄ 综合 ⁄ 共 3282字 ⁄ 字号 评论关闭

因为是个测试写的是个java工程,web工程一样修改个路径就行,主要是一次性搞定多个子目录下的js和css。附件还有个工具包(js压缩.rar),可以压缩多个文件,貌似都是一个目录下的文件,中间我加了些说明,目录我测了下只能用相对路径。(这个东东忘了从那里找的了,见谅)。

另外大概说明一下yuicompressor的使用方法

命令行用法
语法: java -jar yuicompressor-x.y.z.jar [options] [input file]
例子:java -jar yuicompressor-2.4.7.jar 3.js -o 3.js --nomunge --charset utf-8

通用参数:
-h, –help 显示帮助信息
–type <js|css> 指定输入文件的文件类型
–charset <charset> 指定读取输入文件使用的编码
–line-break <column> 在指定的列后插入一个 line-bread 符号
-v, –verbose 显示info和warn级别的信息
-o <file> 指定输出文件。默认输出是控制台。

JavaScript专用参数:
–nomunge 只压缩, 不对局部变量进行混淆。
–preserve-semi 保留所有的分号。
–disable-optimizations 禁止优化。

Xml代码
复制代码

收藏代码
  1. <!--复制一个新工程再用此工具,因为会直接覆盖未压缩代码-->
  2. <?xml
    version="1.0"
    encoding="UTF-8"?>
  3. <project
    name="MyTask"
    basedir="."
    default="compress-css">
  4. <property
    name="src.dir"
    value="./src"
    />
  5. <property
    name="yuicompressor"
    value="./src/resource/yuicompressor-2.4.7.jar"
    />
  6. <target
    name="compress-js">
  7. <apply
    executable="java"
    parallel="false"
    failonerror="true"
    dest="${src.dir}/"
    append="false"
    force="true">
  8. <!--单个文件压缩-->
  9. <fileset
    dir="${src.dir}/">
  10. <include
    name="1.js"
    />
  11. <include
    name="2.js"
    />
  12. </fileset>
  13. <!--多个子目录压缩-->
  14. <fileset
    dir="${src.dir}/"
    includes="js1/*.js"/>
  15. <fileset
    dir="${src.dir}/"
    includes="js2/*.js"/>
  16. <!-- 以下写法错误,dir和dest(java命令执行的路径)相同
  17. <fileset
    dir="${src.dir}/js1/"
    includes="*.js"/>
  18. -->
  19. <arg
    line="-jar"
    />
  20. <arg
    path="${yuicompressor}"
    />
  21. <arg
    line="--charset gbk"
    />
  22. <srcfile
    />
  23. <arg
    line="-o"
    />
  24. <mapper
    type="glob"
    from="*.js"
    to="*.js"
    />
  25. <targetfile
    />
  26. <!--只压缩去掉空格,不混淆-->
  27. </apply>
  28. </target>
  29. <target
    name="compress-css">
  30. <apply
    executable="java"
    parallel="false"
    failonerror="true"
    dest="${src.dir}"
    append="false"
    force="true">
  31. <!--单个文件压缩-->
  32. <fileset
    dir="${src.dir}/">
  33. <include
    name="1.css"
    />
  34. <include
    name="2.css"
    />
  35. </fileset>
  36. <!--多个子目录压缩-->
  37. <fileset
    dir="${src.dir}/"
    includes="css1/*.css"/>
  38. <fileset
    dir="${src.dir}/"
    includes="css2/*.css"/>
  39. <arg
    line="-jar"
    />
  40. <arg
    path="${yuicompressor}"
    />
  41. <arg
    line="--charset utf-8"
    />
  42. <srcfile
    />
  43. <arg
    line="-o"
    />
  44. <mapper
    type="glob"
    from="*.css"
    to="*.css"
    />
  45. <targetfile
    />
  46. </apply>
  47. </target>
  48. </project>

参考 http://blog.csdn.net/jeamking/article/details/5166495

抱歉!评论已关闭.