<?xml version="1.0" encoding="UTF-8"?>
<project name="你的war包名字" default="generwar" basedir=".">
<property name="src.dir" value="${basedir}/src" />
<property name="webRoot" value="${basedir}/defaultRoot"/>
<property name="build.lib" value="${webRoot}/WEB-INF/lib"/>
<property name="build.dir" value="${basedir}/target" />
<property name="build.classes" value="${build.dir}/classes"/>
<property name="resources" value="${basedir}/config"/>
<property name="webserver" value="war包部署目录"/>
<!--定义CLASSPACH,编译时用到你外部加入的包-->
<path id="classpath">
<pathelement location="${src.dir}" />
<fileset dir="${build.lib}" includes="***.jar" />
</path>
<!--1、删除编译target目录-->
<target name="clean" description="delete directory">
<echo message="clean target directory"/>
<delete dir="${build.dir}" />
</target>
<!--2、创建编译target目录-->
<target name="init" description="create target directory" depends="clean">
<echo message="create target directory"/>
<mkdir dir="${build.dir}" />
<mkdir dir="${build.classes}" />
</target>
<!--3、编译java源文件-->
<target name="compile" description="compile source files" depends="init">
<echo message="compile source files"/>
<javac srcdir="${src.dir}" destdir="${build.classes}">
<classpath refid="classpath" />
<compilerarg line="-encoding GBK "/>
</javac>
</target>
<!--4、 复制资源文件 -->
<target name="copyRes" depends="compile" description="copy resources to classes path" >
<echo message="copy resources to classes path"/>
<copy todir="${build.classes}">
<fileset dir="${resources}"/>
</copy>
</target>
<!--5、打成WAR包-->
<target name="generwar" depends="copyRes">
<echo message="generate war"/>
<war destfile="${build.dir}/${ant.project.name}.war" webxml="${webRoot}/WEB-INF/web.xml" >
<fileset dir="defaultRoot" ></fileset>
<lib dir="${build.lib}"/>
<classes dir="${build.classes}"/>
</war>
</target>
<!--6、把WAR放到一个指定目录,这里是直接布署到TOMCAT服务器-->
<target name="deployWar" depends="generwar" description="deploy war">
<echo message="deploy war"/>
<copy file="${build.dir}/${ant.project.name}.war" todir="${webserver}">
</copy>
</target>
<!--7、把打好的WAR删除-->
<target name="deleteWar" depends="deployWar" description="delete war from target directory">
<echo message="delete war from target directory"/>
<delete dir="${build.dir}/${ant.project.name}.war"/>
</target>
</project>
分享到:
相关推荐
总结来说,Java利用Ant脚本生成WAR包是一个标准化的过程,涉及源代码的编译、资源文件的组织、依赖库的管理以及最终的打包操作。通过配置和定制Ant脚本,可以适应不同项目的需求,实现高效、可靠的自动化构建。
在这个示例中,我们定义了三个目标:`init`用于创建必要的目录,`compile`用于编译源代码,`war`则负责生成WAR包。 提到"svn的几个不同版本",这可能指的是Subversion(SVN),一个版本控制系统,用于跟踪文件和...
在TeamCity中,Ant脚本扮演着至关重要的角色,因为Ant是Java项目常用的构建工具,能够定义和执行构建过程。下面我们将深入探讨TeamCity与Ant脚本的结合使用及其相关知识点。 1. **Ant简介** Ant是Apache软件基金会...
### ant脚本通用模板知识点详解 #### 一、Ant简介 Apache Ant 是一个Java环境下的构建工具,主要用于编译、测试、部署等任务的自动化执行。Ant使用XML格式来描述构建过程,使得整个构建流程清晰易懂。对于中小型...
在`build.xml`或`build1.xml`这样的ANT脚本中,可能会包含使用XDoclet的任务定义,例如`<xdoclet>`任务,来执行这一步骤。 2. **部署EJB项目**: EJB(Enterprise JavaBeans)是Java EE平台的核心组件,用于构建可...
标题中的“ant脚本打包”指的是使用Apache Ant工具来构建和打包软件项目。Apache Ant是一个Java库和命令行工具,其任务是驱动构建过程。它通过XML格式的构建文件(通常命名为build.xml)来定义任务,这些任务可以...
例如,`ant compile`编译源码,`ant war`则生成WAR文件。 8. **扩展与集成**:除了基本功能,Ant还可以通过插件扩展,与其他工具(如Maven、Ivy)集成,实现更复杂的构建需求。 9. **持续集成**:在实际开发中,...
Ant能够处理编译Java源代码、生成JAR或WAR包、清理构建目录等任务。在myEclipse中,用户可以通过内置的Ant支持来创建和运行Ant构建脚本,这样可以提高开发效率,确保构建的一致性和可重复性。 标签“ant 蚂蚁配置”...
`clean`任务删除`build`目录,`compile`任务编译源代码到`build/classes`,`war`任务则生成WAR包,包含`WebRoot`下的资源、`lib`目录的JAR文件以及编译后的类文件。 4. **ANT示例1.3** 也涉及编译和清理任务,但未...
当你成功生成了WAR包后,下一步通常是将其部署到应用服务器上。这通常涉及到将WAR文件复制到服务器的特定目录,例如Tomcat的`webapps`目录。然后,服务器会自动检测到新文件并启动应用。具体步骤取决于你的应用...
1. `bin` 目录:包含Ant的可执行脚本(如ant.bat和ant.sh),这些脚本用于启动Ant。 2. `lib` 目录:存放ant.jar和其他必需的库文件。 3. `docs` 目录:包含各种文档,如HTML格式的用户指南和任务参考。 4. `src` ...
Ant是Apache组织开发的一款Java构建工具,它使用XML来描述构建过程,使得构建脚本具有良好的可读性和可维护性。在本项目中,Ant被用来执行自动化任务,包括从Subversion(SVN)版本控制系统中获取源代码,并对代码...
在这个例子中,`hibernatetool`任务会读取源代码目录下的所有`.hbm.xml`文件,根据它们生成对应的SQL脚本(schema.sql),并写入到指定的目录。 在实际开发中,Ant和Hibernate的结合使用可以大大提高项目的开发效率...
5. **构建和部署**:一旦Middlegen完成生成,你可以继续在Ant脚本中添加其他任务,如编译Java代码,打包成JAR或WAR,以及部署到服务器。 在实际应用中,你可能还需要处理一些复杂情况,比如处理数据库的连接池、...
3. **打包JAR/WAR**:Ant能够将编译后的类文件和其他资源打包成JAR或WAR文件,这对于创建可分发的Java应用或Web应用至关重要。 4. **运行测试**:Ant支持JUnit和其他测试框架,可以自动化执行单元测试和集成测试,...
"ant案例"涵盖了各种实际场景的应用,比如如何配置Ant来编译Java项目、打包JAR文件、生成WAR文件以部署到Web服务器,甚至如何执行单元测试、代码覆盖率分析等。通过实际操作案例,可以更直观地学习Ant的工作原理和...
5. 运行`gradle war`:生成WAR文件,准备部署。 通过以上步骤,你可以使用Gradle高效地构建和管理Java Web项目,享受到其强大的灵活性和自动化能力。在实际开发中,可以根据具体需求调整构建脚本,实现更高效的开发...
Ant可以方便地创建JAR和WAR包,使用`jar`和`war`任务,配合`manifest`元素可以定制MANIFEST.MF文件。 十一、部署和发布 Ant支持自动部署应用程序到远程服务器,如`ftp`、`scp`任务可以用于文件传输,`deploy`任务可...
【jenkins.war包】是Jenkins持续集成服务器的核心组件,它是一个独立的可执行WAR文件,可以在Java应用服务器上运行。Jenkins是一款开源的持续集成工具,用于自动化各种任务,包括构建、测试和部署软件。它支持各种...