<?xml version="1.0" encoding="UTF-8"?>
<!-- 对指定目录下的所有js进行压缩,放入指定位置 -->
<project name="jsbuild" default="build">
<property name="web.dir" location="WebRoot" />
<property name="yuicompressor.jar" location="${web.dir}/WEB-INF/lib/yuicompressor-2.4.2.jar" />
<!-- 得到当前日期 -->
<tstamp>
<format property="now.date" pattern="yyyy-MM-dd" locale="zh" />
</tstamp>
<!-- 要压缩的js源文件所在文件夹,这个文件里的所有js将被压缩 -->
<property name="source.dir" location="${web.dir}/js"/>
<!-- 目标目录,压缩后的js文件放在哪个目录下 -->
<property name="dest.dir" location="${web.dir}/js/compress"/>
<!-- 压缩过程中的临时目录 -->
<property name="temp" location="${web.dir}/tmp/${now.date}"/>
<!-- 压缩完成后, copy要压缩文件至目标目录 -->
<target name="build" depends="js.compress">
<!--
<echo message="压缩完成后, 拷贝${temp}/*.js至${source.dir}目录,并删除tmp目录">[开始]</echo>
<copy todir="${source.dir}" overwrite="true">
<fileset dir="${temp}" includes="*.js" />
</copy>
<delete dir="${web.dir}/tmp"/>
<echo message="压缩完成后, 拷贝${temp}/*.js至${source.dir}目录,并删除tmp目录">[结束]</echo>
-->
<!-- <copy file="${temp}/compress-all-pack.js" tofile="${dest.dir}/compress-all-pack.js" overwrite="true" failonerror="false"/>
<echo message="压缩完成后, 拷贝${temp}/compress-all-pack.js至目标目录"></echo> -->
</target>
<!-- YUI Compress 压缩合并操作-->
<target name="js.compress" depends="createTemp">
<!-- 循环压缩文件 -->
<echo message="循环压缩${temp}所有js文件">[开始]</echo>
<apply executable="java" parallel="false" failonerror="true">
<fileset dir="${source.dir}" includes="*.js" /> <!-- 源文件及所在目录, 指定下面要循环文件 -->
<arg line="-jar" />
<arg path="${yuicompressor.jar}" />
<arg line="--charset utf-8" />
<srcfile />
<arg line="-o" />
<targetfile />
<mapper type="glob" from="*.js" to="${temp}/*.js" />
</apply>
<echo message="循环压缩${temp}所有js文件">[结束]</echo>
<!-- 连接文件至目标目录 fixlastline="true" 每个文件占一行 -->
<echo message="将${temp}目录下所有js压缩成一个文件至${temp}/compress-all-pack.js">[开始]</echo>
<concat destfile="${dest.dir}/compress-all-pack.js" fixlastline="true" encoding="UTF-8">
<fileset dir="${temp}">
<include name="**.js" />
<exclude name="*.css"/> <!-- 排除 -->
</fileset>
</concat>
<echo message="将${temp}目录下所有js压缩成一个文件至${dest.dir}/compress-all-pack.js">[结束]</echo>
</target>
<!-- 创建临时目录 -->
<target name="createTemp" description="创建临时目录">
<delete dir="${temp}"/>
<mkdir dir="${temp}"/>
<echo>创建临时目录${temp}</echo>
</target>
</project>
分享到:
相关推荐
标题 "ant和yuicompressor 压缩css、js方案" 涉及到的是在软件开发中如何使用构建工具Ant以及JavaScript压缩工具YUI Compressor来优化前端资源,特别是CSS和JavaScript文件。这两个工具在Web开发中起着至关重要的...
总之,“用yuicompressor和Ant压缩Ext的CSS文件”是一个前端性能优化的过程,通过使用Ant自动化工具和yuicompressor压缩库,可以有效地减小CSS文件的大小,提高网页的加载速度,为用户提供更好的浏览体验。...
为了实现批量压缩js和css文件,我们需要引入几个Ant的贡献库(Contrib tasks),其中包括YUI Compressor。YUI Compressor是由Yahoo开发的一款高效的JavaScript和CSS压缩工具,它可以删除代码中的空格、注释,并进行...
这里我们将深入探讨一个在Ant构建系统中广泛使用的工具——yuicompressor.jar,它是一款强大的CSS和JS压缩工具。 Ant是一个由Apache软件基金会开发的Java项目构建工具,它以XML为基础,提供了一种跨平台的、声明式...
3. **压缩js.bat** 和 **合并js.bat**:分别专注于JavaScript文件的压缩和合并。 4. **build.properties**:Ant构建配置文件,包含项目特定的属性和设置。 5. **使用说明.txt**:提供工具的使用指南和步骤,帮助用户...
在描述中提到的博客链接,可能提供了关于如何在Ant中配置YUI Compressor的详细步骤,YUI Compressor是一个JavaScript和CSS压缩工具,有助于减小网页加载时间。 YUI,全称Yahoo! User Interface Library,是Yahoo...
在JS压缩中,Ant脚本可以调用诸如YUI Compressor、UglifyJS或Closure Compiler等第三方压缩工具,对JS和CSS文件进行处理。在Eclipse中,可以通过配置Ant任务来自动化这个过程,只需一键执行,就能完成整个项目的压缩...
YUI库是一组工具和控件,它们用JavaScript写成, 为的是用DOM 脚本,DHTML和AJAX等技术创建丰富的网页交互式应用程序。YUI 基于BSD协议,对所有的使用方式都是免费的。YUI 项目包括YUI 库和两个创建时工具:YUI ...
以下是一个示例Ant脚本,用于自动压缩项目中的所有JavaScript文件: ```xml <property name="yuicompressor" value="${tools}/yuicompressor-2.3.6.jar"/> <!-- 压缩所有需要的JS文件 --> ${dist}/WebRoot"> ...
在现代Web开发中,优化JavaScript文件的加载和...本文通过实例介绍了如何使用ANT脚本配合YUICompressor工具来压缩JavaScript文件,这是一个既高效又灵活的压缩解决方案,尤其适合在Java环境中对Web项目进行构建和优化。
本文将基于提供的标签“源码”和“工具”,以及压缩包子文件的文件名称“yuicompressor-2.4.2.jar”和“YUIAnt-zh_CN.jar”,探讨这两个工具在前端优化中的应用。 首先,`yuicompressor-2.4.2.jar` 是 Yahoo! 的一...