ant+yuicompressor在前端部署和服务器发布中用处极大。之前介绍的SASS可以压缩CSS,还有grunt技术等等,都很强大。我在项目中用到的是ant+yuicompressor,ant可以压缩CSS,压缩javascript,并可以传输信息和远程服务器发布!
具体ant安装请看:http://www.haorooms.com/tools/ant_book/
感谢ant高手河名同志贡献的文档,我把文档放到我的小工具中了,可以供前端开发者参阅。源文档是河明写的,我在他的基础上稍加改动,后期将对其继续完善。
下面总结一下我运用ant当中的一些知识吧:
在cmd中输入 ant -Dversion ="某某某"
在build中property可以接受穿来的某某某,代码如下
<property name="version" value=""></property>
并可以将版本作为文件夹名称或者输出!
相关简单的操作我就不啰嗦了,下面说说css和js的压缩
javascript压缩代码如下:
<apply executable="java" parallel="false" failonerror="true" dest="输出路径" append="false" force="true">
<fileset dir="输出路径">
<exclude name="**/*.min.js" />
<include name="m/tsses/dessfault/js/zsss.js" />
<include name="**/*.js" />
</fileset>
<arg line="-jar" />
<arg path="${compressor}" />
<arg line="--charset utf8" />
<srcfile />
<arg line="-o" />
<mapper type="glob" from="*.js" to="*.js" />
<targetfile />
</apply>
css压缩代码如下:
<apply executable="java" parallel="false" failonerror="true" dest="路径" append="false" force="true">
<fileset dir=".路径">
<include name="**/*.css" />
</fileset>
<arg line="-jar" />
<arg path="${compressor}" />
<arg line="--charset utf8" />
<srcfile />
<arg line="-o" />
<mapper type="glob" from="*.css" to="*.css" />
<targetfile />
</apply>
还可以用jslint来检查文件的书写规范,后面再讲。
用SCP来进行远程文件发布:
<scp todir="主机用户名:主机密码@主机IP地址 :文件路径" trust="true">
<fileset dir='../../release/${version}_website/(文件地址)'>
<exclude name="${data}"/>
<exclude name="${images}"/>
<exclude name="${temp}"/>
<exclude name="${uc_avatar}"/>
</fileset>
</scp>
${},是配置的变量,可以在头部引入build.properties 自定义一些变量。
通过SVN info获取SVN版本号通过调用cmd命令行,获取SVN版本,存放到buildRevision文件中,然后再引进buildRevision这个文件。读取版本号的值。
其中
<redirector>
<outputfilterchain>
<linecontainsregexp>
<regexp pattern="^Revision:"/>
</linecontainsregexp>
<tokenfilter>
<replaceregex pattern="Revision\:\s*" flags="s" replace="Revision="/>
</tokenfilter>
</outputfilterchain>
</redirector>
这个的意思是过滤掉SVNINFO命令行中其他,只留下Revision=版本号 然后再引进就可以了。
这些是我之前用ant所要注意的难点和重点,现在分享出来,供大家参考!