<?xml version="1.0" encoding="UTF-8"?>
<project name="worker" default="usage">
<property name="basedir" value="."/> <!-- 定义根目录为当前目录 -->
<property name="app.name" value="worker"/> <!-- 定义应用程序名称 -->
<property name="war.name" value="${app.name}.war"/> <!-- 定义根war包的名称 -->
<property name="src.dir" value="${basedir}/src" /> <!-- 定义源代码路径 -->
<property name="lib.dir" value="${basedir}/WebContent/Web-INF/lib"/> <!-- 定义库文件路径 -->
<property name="dist.dir" value="${basedir}/WebContent/WEB-INF/classes"/> <!-- 定义根class文件位置 -->
<property name="tomcat.dir" value="D:/apache-tomcat-6.0.18"/> <!-- 定义本机上Tomcat安装目录 -->
<property name="out.dir" value="${basedir}/out"/> <!-- 定义根war包的输出位置 -->
<property name="env" value="dev"></property>
<!-- 定义claspath -->
<path id="classpath">
<fileset dir="${lib.dir}">
<include name="**/*.jar"/>
</fileset>
<fileset dir="${tomcat.dir}/lib">
<include name="**/*.jar"/>
</fileset>
</path>
<!--显示用法-->
<target name="usage">
<echo message="${app.name} Build file"/>
<echo message="-------------------------------------------------------------"/>
<echo message=""/>
<echo message=" available targets are:"/>
<echo message=""/>
<echo message=" clean --> 清除相关的目录"/>
<echo message=" init --> 新建所需要的目录"/>
<echo message=" build --> 编译所有源代码到[${dist.dir}]目录"/>
<echo message=" copyfile --> 把[${src.dir}]目录中的xml和properties配置文件复制到[${dist.dir}]"/>
<echo message=" war --> 把[${basedir}/WebRoot]目录打包成war文件放到[${out.dir}]"/>
<echo message=" ftpdeploy --> 把打好的war包传到ftp上"/>
<echo message=""/>
<echo message="-------------------------------------------------------------"/>
<echo message=""/>
<echo message=""/>
</target>
<target name="clean">
<!--清除以前目录-->
<delete dir="${dist.dir}" failonerror="false"/>
<delete dir="${out.dir}" failonerror="false"/>
</target>
<!--初始化-->
<target name="init" depends="clean">
<!--准备目录-->
<mkdir dir="${dist.dir}"/>
<mkdir dir="${out.dir}"/>
</target>
<!--编译-->
<target name="build" depends="init">
<javac srcdir="${src.dir}" destdir="${dist.dir}" encoding="utf-8">
<classpath refid="classpath"/>
</javac>
</target>
<!--复制配置文件-->
<target name="copyfile" depends="init">
<copy todir="${dist.dir}">
<fileset dir="${src.dir}">
<include name="**/*.xml"/>
<include name="**/*.hbm.xml"/>
</fileset>
</copy>
<copy tofile="${dist.dir}/db.properties">
<fileset dir="${src.dir}" includes="db_${env}.properties" />
</copy>
<copy tofile="${dist.dir}/log4j.properties">
<fileset dir="${src.dir}" includes="log4j.properties" />
</copy>
<copy tofile="${dist.dir}/format.properties">
<fileset dir="${src.dir}" includes="format.properties" />
</copy>
</target>
<target name="jar" depends="copyfile">
<jar jarfile="${out.dir}/${app.name}.jar" basedir="${dist.dir}">
</jar>
<delete dir="${dist.dir}" failonerror="false" quiet="true"/>
<copy todir="${lib.dir}">
<fileset dir="${out.dir}">
<include name="${out.dir}/${app.name}.jar"/>
</fileset>
</copy>
</target>
<!--打包成war-->
<target name="war" depends="copyfile,build" >
<war destfile="${out.dir}/${war.name}" webxml="${basedir}/WebContent/WEB-INF/web.xml">
<fileset dir="${basedir}/WebContent">
<exclude name="**/web.xml"/>
<include name="**/*.*"/>
<include name="**/*"/>
</fileset>
</war>
</target>
<target name="deploy" depends="copyfile,build,war">
<copy todir="${tomcat.dir}/webapps">
<fileset dir="${out.dir}">
<include name="${war.name}"/>
</fileset>
</copy>
</target>
<!--使用ftp上传-->
<!--注意,使用这个命令需要有common-net(http://jakarta.apache.org/commons/net/download.html)包在ant的classpath中-->
<target name="ftpdeploy" depends="war">
<ftp action="delete" server="10.0.0.21" port="21" remotedir="/" userid="web" password="web">
<fileset>
<include name="${app.name}"/>
<include name="${war.name}"/>
</fileset>
</ftp>
<ftp server="10.0.0.21"
port="21"
remotedir="/"
userid="uid"
password="pwd">
<fileset dir="${out.dir}">
<include name="${war.name}"/>
</fileset>
</ftp>
</target>
</project>
分享到:
相关推荐
在TeamCity中,Ant脚本扮演着至关重要的角色,因为Ant是Java项目常用的构建工具,能够定义和执行构建过程。下面我们将深入探讨TeamCity与Ant脚本的结合使用及其相关知识点。 1. **Ant简介** Ant是Apache软件基金会...
- **XML结构**:Ant脚本以XML格式编写,遵循特定的命名空间和元素结构,如`<project>`、`<target>`、`<task>`等。 - **属性(Attribute)**:任务通常有属性,用来设置参数,例如`srcdir`用于指定源代码目录,`...
首先,让我们来看看Ant脚本的基本结构。一个典型的Ant构建文件(build.xml)会包含多个目标(target),每个目标是一系列任务的集合。例如,一个简单的构建文件可能包含`compile`、`test`和`package`目标。以下是...
通过ant对各种语言脚本做运行管理,并输出报告!
ant脚本例子,一个build.xml模板, 修改后直接运行。
### ant脚本通用模板知识点详解 #### 一、Ant简介 Apache Ant 是一个Java环境下的构建工具,主要用于编译、测试、部署等任务的自动化执行。Ant使用XML格式来描述构建过程,使得整个构建流程清晰易懂。对于中小型...
通过ant脚本,编译打包android工程。 编译打包android工程的ant脚本,Android官方提供的打包脚本。 有注释
Ant是一个Apache基金会下的跨平台的构件工具,它可以实现项目的自动构建和部署等功能。在本文中,主要熟悉怎样将Ant应用到Java项目中,让它简化构建和部署操作。
Shell脚本和Ant脚本是两种在IT行业中广泛使用的自动化工具,主要应用于Unix/Linux系统和Java项目的构建。这里我们将深入探讨这两个概念以及它们在实际工作中的应用。 首先,Shell脚本是基于Unix/Linux命令行环境的...
本文将深入探讨如何使用`Ant`脚本来编译并创建一个`JAR`文件,以此来理解`Ant`脚本的工作原理和实际应用。 `Ant`是Apache软件基金会开发的一款开源构建工具,它使用XML格式定义构建过程,具有高度可配置性和可扩展...
4. **交互与控制流**:JavaScript提供了丰富的控制流语句,如`if...else`、`for`循环等,这使得Ant脚本能够根据项目需求进行条件判断和迭代操作。 5. **错误处理**:JavaScript中的异常处理机制也能在Ant脚本中使用...
在`build.xml`或`build1.xml`这样的ANT脚本中,可能会包含使用XDoclet的任务定义,例如`<xdoclet>`任务,来执行这一步骤。 2. **部署EJB项目**: EJB(Enterprise JavaBeans)是Java EE平台的核心组件,用于构建可...
Java项目中的Ant打包脚本是开发过程中的一个重要环节,它使得开发者能够自动化构建、测试和部署应用程序。Ant是一个基于XML的构建工具,由Apache软件基金会开发,它在Java社区广泛使用,替代了早期的Makefile,因为...
本资源"Ant和批处理脚本.rar"聚焦于两种常用的自动化工具:Apache Ant和Windows批处理脚本,它们在不同场景下各有优势。 Apache Ant是一个由Apache软件基金会开发的Java库和命令行工具,其设计目标是驱动构建过程。...
【Ant脚本自动构建SVN增量】是一种高效且节省资源的软件开发实践,它使得开发和测试团队能够自动化处理从代码提交到构建、打包、再到部署的整个过程。使用Ant,一个基于XML的构建工具,可以创建可重复执行的脚本来...
在本文中,我们将深入探讨Ant脚本的各个方面。 ### Ant的基本结构 Ant的核心是构建文件,这个文件通常以XML格式编写,包含了多个目标(target)和任务(task)。目标是一系列任务的集合,它们按照特定顺序执行。...
标题中的“分享一个项目的Ant脚本配置”表明我们将探讨的是如何使用Apache Ant工具来构建和管理Java项目。Ant是开源的构建工具,广泛应用于Java项目,它可以自动化编译、打包、测试等开发流程。 在描述中提到的...
这个“ANT脚本学习与开发指导”文档,显然是为了帮助初学者掌握ANT的基本用法和高级技巧。下面,我们将深入探讨ANT的核心概念、用途、基本结构以及如何进行实际操作。 一、ANT简介 ANT是Apache软件基金会的一个项目...