`

Ant打包应用

阅读更多

ANT的配置不太好记,整理下,方便以后复制粘贴。

操作步骤大致如下:

首先,下载ant并解压,目录结构为: D:\apache-ant-1.7.1-bin\apache-ant-1.7.1

顺便配置下环境变量

ANT_HOME --> D:\apache-ant-1.7.1-bin\apache-ant-1.7.1 

path --> %ANT_HOME%\bin;

 

然后,在当前项目(组件式开发)根目录下建立build文件夹,并在该文件夹下

1.新建一个build.bat文件,内容如下:

D:\apache-ant-1.7.1-bin\apache-ant-1.7.1\bin\ant -logfile log.txt -buildfile build.xml
pause

2.新建LIB文件夹并添加如下两个jar包

javax.servlet.jar

javax.servlet.jsp.jar

3.新建build.xml,内容如下:

<?xml version="1.0" encoding="UTF-8" ?>
<project name="ZZT" default="publish">
	<property name="svndir" value="./.." />
	<property name="libdir" value="./Lib" />
	<property name="workdir" value="xxx.war" />
	<property name="jspdir" value="WebContent" />
	<property name="javadir" value="ProductCode" />
	<property name="war.name" value="xxx.war" />

	<!--设置运行环境 *.jar-->
	<path id="bs-ref-library">
		<fileset dir="${svndir}/ZZT_CJ000_ShareLib">
			<include name="*.jar" />
		</fileset>
		<fileset dir="${libdir}">
			<include name="*.jar" />
		</fileset>
		<pathelement location="${workdir}/WEB-INF/classes" />
	</path>

	<!--处理工作目录-->
	<target name="DealWorkDir">
		<delete dir="${workdir}" />
		<delete dir="${war.name}" />
		<delete>
			<fileset file="xxx.war" />
		</delete>

		<mkdir dir="${workdir}" />
	</target>

	<!--拷贝WEB文件到工作目录-->
	<target name="copyWebFile" depends="DealWorkDir">
		<copy overwrite="true" todir="${workdir}">
			<fileset dir="${svndir}/ZZT_CJ001_ZZTFW/${jspdir}" />
			<fileset dir="${svndir}/ZZT_CJ002_User/${jspdir}" />
		</copy>
	</target>

	<!--处理WEB_INF文件夹-->
	<target name="dealWebInfFolder" depends="copyWebFile">
		<delete dir="${workdir}/WEB-INF" />
		<mkdir dir="${workdir}/WEB-INF" />
		<mkdir dir="${workdir}/WEB-INF/lib" />
		<copy overwrite="true" todir="${workdir}/WEB-INF/lib">
			<fileset dir="${svndir}/ZZT_CJ000_ShareLib" includes="*.jar,*.zip" />
		</copy>
		<mkdir dir="${workdir}/WEB-INF/classes" />
	</target>

	<!--编译所有ZZT_UAC一的组件,组件顺序不分先后,并将相应的jsp文件copy到相应的文件夹-->
	<target name="buildAllJavaFile" depends="dealWebInfFolder">
		<javac destdir="${workdir}/WEB-INF/classes" includes="**/*.java" encoding="UTF-8" source="1.5" target="1.5" deprecation="false" optimize="true" failonerror="false" debug="true">
			<classpath refid="bs-ref-library" />
			<src path="${svndir}/ZZT_CJ001_ZZTFW/${javadir}" />
			<src path="${svndir}/ZZT_CJ002_User/${javadir}" />
		</javac>
	</target>

	<!--将需要的配置文件copy到相应目录-->
	<target name="copyConfigFile" depends="buildAllJavaFile">
		<copy overwrite="true" todir="${workdir}/WEB-INF/classes">
			<fileset dir="${svndir}/ZZT_CJ001_ZZTFW/${javadir}" includes="**/*.xml,**/*.hbm.xml,**/*.properties,**/*.config,**/*.txt" />
			<fileset dir="${svndir}/ZZT_CJ002_User/${javadir}" includes="**/*.xml,**/*.hbm.xml,**/*.properties,**/*.config,**/*.txt" />
		</copy>
	</target>

	<target name="copyTempFiles" depends="copyConfigFile">
		<copy overwrite="true" todir="${workdir}/WEB-INF">
			<fileset dir="${svndir}/ZZT_CJ001_ZZTFW/${jspdir}/WEB-INF" includes="**/*.xml"></fileset>
		</copy>
	</target>

	<target name="mkWAR" depends="copyTempFiles">
		<mkdir dir="xxx.war" />
		<copy overwrite="true" todir="xxx.war">
			<fileset dir="${workdir}"></fileset>
		</copy>
	</target>

	<target name="finalize" depends="publish">
		<delete dir="${workdir}" />
	</target>

	<!-- 发布版本 -->
	<target name="publish" depends="copyTempFiles">
		<zip destfile="${artifactsDir}/${war.name}" basedir="./">
			<include name="${workdir}/**/*.*" />
		</zip>
	</target>
</project>

 

OK,执行build.bat就到位了。

分享到:
评论

相关推荐

    mac下ant打包android

    当你要为不同的渠道(如不同的应用商店)打包应用时,通常需要修改build.xml文件,添加相应的渠道参数。例如,你可能需要在apk的资源目录下创建一个渠道特定的文件,然后在打包时将这个文件包含进去。 `ant-contrib...

    java项目ant打包脚本

    Java项目中的Ant打包脚本是开发过程中的一个重要环节,它使得开发者能够自动化构建、测试和部署应用程序。Ant是一个基于XML的构建工具,由Apache软件基金会开发,它在Java社区广泛使用,替代了早期的Makefile,因为...

    ant打包Web工程

    本文将深入探讨“ant打包Web工程”这一主题,基于提供的标签“源码”和“工具”,我们将围绕Apache Ant这个强大的Java构建工具进行讲解。 Apache Ant是一个开源的Java构建工具,它以XML格式定义了构建过程,使得...

    使用ant打包android

    总结,使用Ant打包Android应用涉及到了Java和Android开发的基础知识,包括环境配置、构建脚本、编译过程、资源处理、APK打包和签名。虽然现代的Android项目多采用Gradle,但了解Ant可以帮助开发者更好地理解和控制...

    ant打包详细教程

    `target`定义了一个特定的构建阶段,比如编译源代码、运行测试或者打包应用。`task`则是执行的具体动作,如`javac`用于编译Java源代码,`jar`用于创建JAR文件,`copy`用于文件复制等。 在Ant中,打包过程通常涉及...

    Ant批量打包Android应用

    在上面的脚本中,我们导入了SDK自带的build.xml,并定义了一个名为“release”的目标,该目标包含了打包应用的步骤。同时,我们指定了签名文件(android.keystore)的位置和相关的密码。 在实际的批量打包过程中,...

    java的Ant打包工具

    Java的Ant打包工具是开发过程中不可或缺的一部分,尤其在构建、部署和自动化任务管理方面发挥着重要作用。Ant是由Apache软件基金会开发的一个开源项目,其设计灵感来源于Make,但使用XML来描述构建过程,使得构建...

    ant打包

    视频教程在学习Ant打包过程中扮演了辅助角色,它们提供直观的视觉演示,帮助开发者理解Ant的工作原理和配置语法。通过观看这些视频,初学者可以更好地掌握如何编写和执行Ant脚本,了解如何处理特定的构建挑战,如...

    ant打包工具

    **Ant打包工具详解** Ant是Apache软件基金会Jakarta项目下的一个构建工具,它以其灵活性和可扩展性在Java开发领域中被广泛应用。Ant基于XML,它的主要任务是编译源代码、创建JAR文件、执行测试、部署应用程序等。...

    Ant 打包工程

    ### Ant打包过程 1. **编译**:首先,Ant会编译源代码。在上面的例子中,`javac`任务被用来编译`src`目录下的Java源文件到`build/classes`目录。 2. **创建JAR**:编译完成后,`jar`任务用于将编译后的类文件打包成...

    ant打包编译全套资料

    在Ant打包编译过程中,常常会涉及到以下知识点: 1. **构建文件结构**:理解Ant构建文件的基本结构,包括项目信息、属性、目标和任务的组织方式。 2. **属性与变量**:如何定义、引用和传递属性,利用`${}`进行变量...

    ant打包ant的build.xml的详解

    Ant 打包 ant 的 build.xml 详解 Ant 是一个流行的自动化构建工具,广泛应用于软件开发和项目自动化构建中。本文将详细介绍 Ant 的环境变量配置和 build.xml 文件的配置详解。 第一步:安装 Apache Ant 在开始...

    使用ant编译打包应用程序

    这个示例展示了如何使用Apache Ant工具来编译、打包和运行一个简单的Java应用程序。Ant是一个基于XML的构建工具,它允许开发者定义任务来自动化构建过程,如编译源代码、创建JAR文件、运行测试等。 首先,我们来看...

    ant打包部署工具,官方下载

    3. **打包JAR/WAR**:Ant能够将编译后的类文件和其他资源打包成JAR或WAR文件,这对于创建可分发的Java应用或Web应用至关重要。 4. **运行测试**:Ant支持JUnit和其他测试框架,可以自动化执行单元测试和集成测试,...

    ANT打包命令详解api指令

    在本文中,我们将深入解析ANT打包命令中的`api`指令,以及一些常见的ANT使用示例。 首先,`api`指令在ANT中并不常见,可能是指使用ANT来处理或调用特定API的过程。然而,通常在`build.xml`文件中,我们看到的是如`...

    Ant打包 Hibernate配置 实例

    5. **打包应用**:将编译后的类、Hibernate配置文件和其他资源打包成JAR或WAR文件,以便于部署。 以下是一个简单的Ant任务示例,用于生成Hibernate配置文件: ```xml ...

    SpringMVC 多版本接口/IP访问控制/ANT打包发布到LINUX

    1. 使用SCP或SFTP将ANT打包生成的文件传输到Linux服务器的指定目录。 2. 使用SSH登录服务器,切换到部署目录。 3. 运行解压命令(如tar -zxvf 或 unzip)解压文件。 4. 如果是Tomcat等应用服务器,需要将解压后的...

    SSH2集成+ant打包

    本实例主要探讨如何将SSH2与Ant结合,实现自动化部署和打包流程。SSH2的集成使得我们可以通过安全的方式在本地与远程服务器之间传输文件,例如部署应用程序或更新资源。Ant则负责编译源代码、生成JAR或WAR文件,以及...

Global site tag (gtag.js) - Google Analytics