<?xml version="1.0" encoding="UTF-8"?>
<!-- 对指定目录下的所有js进行压缩,放入指定位置 -->
<project name="js-css-build" default="makewar" basedir=".">
<property name="web.dir" location="WebRoot" />
<property name="web.dir.lib" location="${web.dir}/WEB-INF/lib" />
<property name="yuicompressor.jar" location="${web.dir}/WEB-INF/lib/yuicompressor-2.4.2.jar" />
<!-- 要压缩的源文件所在目录 -->
<property name="source.dir.js" location="${web.dir}/js" />
<property name="source.dir.css" location="${web.dir}/css" />
<!-- 压缩过程中的临时目录 -->
<property name="tmp.dir.js" location="${basedir}/tmp/js" />
<property name="tmp.dir.css" location="${basedir}/tmp/css" />
<!-- 生成jar和war的命名 -->
<property name="target.project.jar" value="autocreate.jar" />
<property name="target.project.war" value="autocreate.war" />
<!--生成*.war并放到build目录下-->
<target name="makewar" description="create a war for the project" depends="makejar,compress">
<!-- <ant antfile="${basedir}/compress-js-css.xml" /> -->
<war destfile="${target.project.war}">
<!-- 包含${web.dir}目录下的内容 -->
<fileset dir="${web.dir}" includes="**">
<!-- 不包含${web.dir}的以下目录 -->
<exclude name="WEB-INF/classes/**" />
<exclude name="js/**" />
<exclude name="css/**" />
</fileset>
<!-- 包含临时目录下压缩后的js和css文件 -->
<fileset dir="${basedir}/tmp" />
</war>
<!-- 删除临时目录 -->
<delete dir="${basedir}/tmp" />
</target>
<!-- 生成jar文件 -->
<target name="makejar" description="create a jar for the project">
<jar jarfile="${web.dir.lib}/${target.project.jar}" includes="**" basedir="${web.dir}/WEB-INF/classes" />
</target>
<!-- YUI Compress 压缩合并操作-->
<target name="compress" depends="createTemp">
<!-- 循环压缩文件 -->
<echo message="循环压缩${source.dir.js}所有js文件">[开始]</echo>
<apply executable="java" parallel="false" failonerror="true">
<fileset dir="${source.dir.js}" 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="${tmp.dir.js}/*.js" />
</apply>
<echo message="循环压缩${source.dir.js}所有js文件">[结束]</echo>
<echo message="循环压缩${source.dir.css}所有css文件">[开始]</echo>
<apply executable="java" parallel="false" failonerror="true">
<fileset dir="${source.dir.css}" includes="*.css" />
<!-- 源文件及所在目录, 指定下面要循环文件 -->
<arg line="-jar" />
<arg path="${yuicompressor.jar}" />
<arg line="--charset utf-8" />
<srcfile />
<arg line="-o" />
<targetfile />
<mapper type="glob" from="*.css" to="${tmp.dir.css}/*.css" />
</apply>
<echo message="循环压缩${source.dir.css}所有css文件">[结束]</echo>
</target>
<!-- 创建临时目录 -->
<target name="createTemp" description="create temp dir">
<mkdir dir="${tmp.dir.js}" />
<mkdir dir="${tmp.dir.css}" />
<echo>创建临时目录${tmp.dir.js},${tmp.dir.css}</echo>
</target>
</project>
分享到:
相关推荐
Ant 是由Apache软件基金会开发的,它的设计灵感来源于Make,但它使用XML来定义构建过程,这使得构建脚本易于理解和跨平台。在Ant中,构建过程被定义在一个名为“build.xml”的文件中,这个文件包含了所有构建任务...
Ant 的设计灵感来源于经典的构建工具 make,但它避免了 make 的一些局限性,比如跨平台的问题和 Makefile 的语法复杂性。Ant 的构建配置文件是基于 XML 格式的,这使得它具有良好的可读性和平台无关性。 安装 Ant ...
Ant的工作方式类似于Make,但它使用XML来描述构建过程,这使得构建脚本易于阅读、理解和维护。 标题“ant配置文件”指的是Ant项目中的核心文件——build.xml。这个文件是Ant构建过程的蓝图,包含了所有构建任务和...
在Apache Ant之前,许多开发者使用Apach Make工具包来完成这些任务,但这个工具存在复杂性和其他问题,从而催生了Ant。Ant最初是作为Tomcat发行版的一部分出现,后来成为了一个独立的项目。截至2014年5月,Apache ...
相较于传统的shell脚本构建工具(例如make或makefile),ANT更加现代化且易于使用。这主要得益于其基于XML的配置文件(通常命名为`build.xml`),使得构建过程更为直观且便于维护。 #### 安装ANT - **下载与获取**...
Ant是Apache软件基金会开发的一款Java语言的构建工具,它的出现是为了替代Make等传统构建工具,更好地适应Java项目的需求。在Java开发中,Ant以其XML格式的构建文件(build.xml)来定义构建过程,使得构建过程更为...
Ant 是 Apache 软件基金会的一个开源项目,它是一个基于Java的构建工具,类似于Make,但更为现代且专为Java设计。Ant使用XML来描述构建过程,包括编译、测试、打包和部署等任务,使得开发者能够通过简单的脚本进行...
Ant的设计灵感确实来源于经典的Unix构建工具make,但它针对Java环境进行了优化,消除了make的一些局限性,比如平台依赖性问题。标题提到的"tomcat-ant-1.7.1官网下载"表明这是Apache Ant 1.7.1版本,与Tomcat服务器...
10. **部署与发布**:Ant可以用于部署应用到服务器,包括WAR和EAR文件的创建与发布,以及远程系统的文件传输。 通过“Ant使用指南”,你可以逐步学习如何设置和运行Ant项目,掌握如何编写和维护构建文件,以及如何...
Ant 提供了一系列内置的任务,可以执行文件操作(如复制、移动等)、Java 编译、打包(WAR 和 JAR 文件)以及执行 shell 命令等任务。此外,Ant 还支持自定义任务,使得用户可以根据项目需求扩展其功能。 #### 三、...
Ant的设计理念是“简单就是美”,它的目标是替代Make这样的传统构建工具,提供更符合Java环境的解决方案。 在“ant打包Web工程”的过程中,主要涉及以下几个步骤和知识点: 1. **配置build.xml**:`build.xml`是...
- **构建工具**:Ant是Apache软件基金会的一个项目,它是一个基于Java的构建工具,类似于Perl的Make或Unix的make工具。 - **XML配置**:Ant的构建过程由名为`build.xml`的XML文件控制,该文件定义了构建过程中的...
Ant是Apache软件基金会开发的一个Java构建工具,它类似于Perl的Make或者Unix的make命令,用于自动化Java项目的构建过程,如编译、打包、测试等。而Tomcat则是一个开源的Servlet容器,广泛用于部署Java Web应用。 ...
使用`ant war`或类似的任务,Ant将打包编译后的文件和资源为WAR文件,准备部署到Web服务器。 7. **部署和运行**:最后,将生成的WAR文件部署到支持Servlet的Web服务器(如Tomcat、Jetty等)。然后可以通过Web服务的...
Ant是Apache软件基金会的一个开放源代码项目,它是一个基于Java的构建工具,类似于Unix的make,但更为跨平台。 Ant以其XML格式的构建文件(build.xml)而著名,这些文件定义了一系列的任务,包括编译、打包、测试、...
在Java开发中,Ant扮演着类似于Make在C/C++开发中的角色,通过XML格式的构建文件(build.xml)来定义任务和依赖关系,使得开发者能够自动化执行一系列构建过程。 Ant 1.7版本是Ant的一个较早版本,虽然现在最新的...
Ant的设计灵感来源于Make,但它在Java世界中扮演着类似的角色,尤其是在大型Java项目中,其灵活性和可扩展性使得它成为必备的工具。 在Java开发中,以编程方式调用Apache Ant意味着我们不再通过命令行执行`ant`命令...
它的设计灵感来源于Make,但与Make不同的是,Ant使用XML来描述构建过程和依赖关系,这使得构建脚本具有跨平台的特性,能够在任何安装了Java环境的系统上运行。Ant.jar包含了Ant的类库和必要的组件,使得开发者可以...
在实际开发中,Ant常用于自动化构建Java应用程序,从编译源代码、生成文档,到打包成JAR或WAR文件,甚至部署到服务器。它的灵活性和可扩展性使其成为许多Java项目首选的构建工具。 总而言之,Apache Ant是一个强大...