一剑飞虹

道可道非常道,名可名非常名
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

jquery项目build.xml学习

Posted on 2009-03-11 23:28  greatqn  阅读(501)  评论(0编辑  收藏  举报

使用svn co http://jqueryjs.googlecode.com/svn/tags/1.3.2 获取jquery的1.3.2版本.

查看日志,这个目录copy form path:/trunk/jquery.这是标准的trunk,tags目录方案.

项目包含三个目录build,src,test.

src 240k,test 1.4M.光看这大小就能感觉到测试是件多么重要的事情.

根目录下就看到了build.xml,还有Makefile.都是自动构建的文件.怀着敬仰的心情,打开build.xml文件学习一下.

1.<property description="Source Folder" name="SRC_DIR" value="src"  />

属性,每一项都有description进行描述.哎,人家就是仔细,回头把自家的也都加上.

2.<loadfile description="Version to build" property="version" srcfile="version.txt" />

version.txt文件里就一个版本号1.3.2,加载进来做为version属性.

3.<concat destfile="${JQ}">
        <fileset dir="${SRC_DIR}" includes="intro.js" />
   <fileset dir="${SRC_DIR}" includes="core.js" />
</concat>

合并文件

4.<replaceregexp match="@VERSION" replace="${version}" flags="g" byline="true" file="${JQ}" />

正则替换文本.

5.<apply executable="java" parallel="false" verbose="true" dest="${DIST_DIR}">
            <fileset dir="${DIST_DIR}">
                <include name="jquery.js" />
            </fileset>
            <arg line="-jar" />
            <arg path="${YUICompressor}" />
            <arg value="--charset" />
            <arg value="ANSI" />
            <arg value="-o" />
            <targetfile />
            <mapper type="glob" from="jquery.js" to="jquery.min.js" />
        </apply>

压缩js,清理空格,注释,还可以重命名变量,用a,b,c代替.这个真是好东西啊,以前找过好久都没找到.

6.<java jar="${JAR}" fork="true">
            <arg value="${BUILD_DIR}/build/pack.js" />
            <arg value="${JQ}" />
            <arg value="${JQ_PACK}" />
        </java>

js加密,打包.这个出来的文件是最小的.

7.<java jar="${JAR}" fork="true">
            <arg value="${BUILD_DIR}/runtest/test.js" />
       </java>

js也有单元测试,真是大开眼界.