首页 > 网站 > WEB开发 > 正文

使用YUI+Ant 实现JS CSS压缩

2024-04-27 14:32:54
字体:
来源:转载
供稿:网友
使用YUI+Ant 实现JS CSS压缩

今天研究了一下YUI yahoo开源框架,感觉很猛啊。

于是乎我做了一个YUI的ant实现,网上好多关于bat的实现,我就另辟蹊径,出个关于这个的ant实现,嘿嘿独一无二的文章,如果转载的话,其注明作者和网站

copyright:Mr.chen

好了具体操作如下:

官网:

yuicomPRessor-2.4.6.jar 下载地址 http://yuilibrary.com/downloads/#yuicompressor

YUIAnt.jar 下载地址 http://www.ubik-ingenierie.com/miscellanous/YUIAnt/

具体的相关代码如下:

xml代码收藏代码
  1. #cssworkdir
  2. commonCss.dir=css
  3. #jsworkdir
  4. commonJs.dir=js
  5. #buildtempdir
  6. output.temp.dir=build
  7. #outputfilesinthedirectory
  8. output.dir=${output.temp.dir}_output
  9. #environmentneedslib
  10. liblib=lib
Build.xml代码收藏代码
  1. <?xmlversion="1.0"encoding="UTF-8"?>
  2. <projectname="CompressCSS-JS"default="compress"basedir=".">
  3. <propertyfile="bulid.properties"/>
  4. <pathid="yuiClasspath">
  5. <filesetdir="${lib}">
  6. <includename="*.*"/>
  7. </fileset>
  8. </path>
  9. <!--#######################Inittheenvironmentofthetool##########################-->
  10. <targetname="init">
  11. <echomessage="begintoinittheinit"/>
  12. <echomessage="deleteallreferencefiles."/>
  13. <deletedir="${output.dir}"/>
  14. <echomessage="deleteend"/>
  15. <echomessage="makethereferencefiles."/>
  16. <mkdirdir="${output.dir}"/>
  17. <mkdirdir="${output.temp.dir}"/>
  18. <echomessage="makeend."/>
  19. </target>
  20. <!--#######################Combinethecssfiles##########################-->
  21. <targetname="combinecss"depends="init"description="Combinecommoncssfiles">
  22. <echomessage="begintocombinethecssfilestoonefile."/>
  23. <concatdestfile="${output.temp.dir}/combined_css.css"encoding="UTF-8"append="false">
  24. <filesetdir="${commonCss.dir}">
  25. <includename="*.css"/>
  26. </fileset>
  27. </concat>
  28. <echomessage="combineend."/>
  29. </target>
  30. <!--#######################Combinethejsfiles##########################-->
  31. <targetname="combinejs">
  32. <echomessage="begintocombinethejsfilestoonefile."/>
  33. <concatdestfile="${output.temp.dir}/all_source.js"encoding="utf-8"append="false">
  34. <filesetdir="${commonJs.dir}">
  35. <includename="*.js"/>
  36. </fileset>
  37. </concat>
  38. <echomessage="combineend."/>
  39. </target>
  40. <!--#######################Compressthejsandcssfiles##########################-->
  41. <targetname="compress"depends="combinecss,combinejs"description="Compress">
  42. <echomessage="begintocompressthecssfile."/>
  43. <taskdefname="yuicompress"classname="com.yahoo.platform.yui.compressor.YUICompressTask">
  44. <classpath>
  45. <pathrefid="yuiClasspath"/>
  46. </classpath>
  47. </taskdef>
  48. <!--firstmethodcompressthecssfiles-->
  49. <yuicompresslinebreak="10000000"warn="false"munge="yes"preserveallsemicolons="true"outputfolder="${output.dir}">
  50. <filesetdir="${output.temp.dir}">
  51. <includename="*.css"/>
  52. </fileset>
  53. </yuicompress>
  54. <echomessage="compressthecssend."/>
  55. <!--secondmethodcompressthejsfiles-->
  56. <echomessage="begintocompressthejsfile."/>
  57. <applyexecutable="java"parallel="false"failonerror="true">
  58. <filesetdir="${output.temp.dir}"includes="all_source.js"/>
  59. <argline="-jar"/>
  60. <argpath="${lib}/yuicompressor-2.4.6.jar"/>
  61. <argline="--charsetutf-8"/>
  62. <argline="-o${output.dir}/combined_js.js"/>
  63. <srcfile/>
  64. </apply>
  65. <echomessage="compressthejsend."/>
  66. <deletedir="${output.temp.dir}"/>
  67. </target>
  68. </project>
Xml代码收藏代码
  1. @echooff
  2. echo################################################
  3. echo##########ToolCompressthejsandcss##########
  4. echo################################################
  5. echoPleasemakesureyourcssandjsinthecss'directoryandjs'directory.
  6. echoIfsure,pleaseenteranybuttontocontinuethetool.
  7. pause
  8. callant-buildfilecompress.xmlcompress>build.log
  9. echocompressend
  10. pause

相关的文件我提供下载,感觉好的,就留言吧

  • YUICompressor.zip(1.5 MB)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表