`

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就到位了。

分享到:
评论

相关推荐

    Ant基本应用教程学习

    目录 ANT简介 安装Apache Ant 验证Apache Ant的安装 安装 Eclipse Ant构建文件 Ant属性任务 Ant属性文件 Ant数据类型 ...Ant打包应用 Ant部署应用程序 Ant执行Java代码 Ant和Eclipse集成 Ant Junit集成

    使用ant编译打包应用程序

    使用ant编译打包应用程序,比较简单,适合初学者。

    Ant批量打包Android应用

    Ant批量打包Android 应用教程地址http://blog.csdn.net/zhaokaiqiang1992/article/details/38086747

    android编译与ant打包

    当一个代码项目大了以后,每次重新编译,打包,测试等都会变得非常复杂而且重复,因此c语言中有make脚本来帮助这些工作的批量完成。在Java 中应用是平台无关性的,当然不会用平台...本文介绍了android编译和ant打包原理

    java用ant打包

    通过ant对项目的打包,ant的详细介绍与应用

    用ANT来编译打包Eclipse插件

    当应用hudson一类的自动化平台来构建Eclipse插件时,不能直接调用ANT工具来编译。本工具自动修改Eclipse的路径为 ${ECLIPSE_HOME},并且自动可查找相应插件。 使用方法: java -jar buildfileGenerator.jar build....

    ant批量打包脚本

    应用一发布,每到上市场的时候,大批量的市场包需要打,手动一个个打已满足不了需求了,所以ant脚本批量打包来了

    JAVA_Ant详细介绍与应用

    包含文档和项目实例。 用Ant实现Java项目的自动构建和部署。 JAVA_Ant详细介绍与应用。 Ant是一个Apache基金会下的跨平台的构件工具,它可以实现项目的自动构建和部署等...4.使用Ant的war任务打包J2EE Web项目 五.总结

    用Ant为Java桌面应用程序打包

    NULL 博文链接:https://forchase.iteye.com/blog/837863

    使用Ant批量多渠道打包Android

    本资源详细的描述了如何使用Ant批量多渠道导报Android应用。运营是需要上传应用到20几个市场上去,这个时候需要批量打不通tag的包,以便友盟能够统计得到各通道下载量

    Ant简单应用

    1.Ant通过命令自动编译出build.xml文件2.ANT的配置及简单实用3. Ant命令行打包应用

    ant自动打包

    ant打包 自己写的自动打包 包含修改应用名称 版本号 渠道号 可以修改成自动多渠道打包

    App自动化之使用Ant编译项目多渠道打包

    在网页后台,使用Ant编译项目多渠道自动打包app应用

    ant打包jar文件脚本分享

    本文介绍的ant脚本是用来打包jar文件,做完JAVA应用一定会用到这个,需要的朋友可以参考下

    apache-ant-1.9.3-src.tar

    在Java 中应用是平台无关性的,当然不会用平台相关的make脚本来完成这些批处理任务了,ANT本身就是这样一个流程脚本引擎,用于自动化调用程序完成项目的编译,打包,测试等。除了基于JAVA是平台无关的外,脚本的格式...

    安卓自动打包

    Android ant 自动打包脚本:自动替换友盟渠道、版本号、包名,而不影响代码(修改的是临时目录中的代码)。 如何集成到我的项目里 前提:了解android官方文档,在项目目录中执行官方命令能打包,比如常见的打包...

    ANT IN ACTION 第2版 中文版.z01

    本书将向你全面介绍大多数Java项目的核心步骤:编译、测试、执行、打包和交付,并告诉你一些“超越极限”的Ant使用方法。贯穿全书,作者通过一个应用程序的逐步完善和复杂,来展现应用如何进展,以及如何解决构造和...

    ANT IN ACTION 第2版 中文版.z02

    本书将向你全面介绍大多数Java项目的核心步骤:编译、测试、执行、打包和交付,并告诉你一些“超越极限”的Ant使用方法。贯穿全书,作者通过一个应用程序的逐步完善和复杂,来展现应用如何进展,以及如何解决构造和...

Global site tag (gtag.js) - Google Analytics