`

ant 脚本

ant 
阅读更多
<?xml version="1.0" encoding="UTF-8"?>
<project name="SME Public Builder" basedir="." default="build-all">
	<!--最终生成文件地址-->
	<property name="dist" value="my_dist" />
	<!--编译时class临时保存文件-->
	<property name="class_temp" value="class_temp"/>
	<!--项目名称-->
	<property name="app_name" value="bank"/>
	<!--项目版本号-->
	<loadfile property="version" srcFile="version.txt" encoding="UTF-8"/>
	<!--清理-->
	<target name="clean" >
		<echo message="Current version is: ${version} "/>
		<mkdir dir="${dist}"/>
		<delete quiet="true" dir="${dist}/${version}"/>
		<mkdir dir="${dist}/${version}"/>
	</target>
	
	<!--classpath 路径-->
	<path id="classpath.lib">
		<fileset dir="war/WEB-INF/lib">
			<include name="*.jar"/>
		</fileset>
		<fileset dir="D:/Program Files/apache-tomcat-6.0.30/lib">
			<include name="*.jar"/>
		</fileset>
	</path>
	
	<property name="classpath" value="war/WEB-INF/lib/*.jar"/>
	<!--编译文件-->
	<target name="compile">
		<!--创建临时文件-->
		<mkdir dir="${class_temp}"/>
		<!--编译java文件-->
		<javac srcdir="src/prod" destdir="${class_temp}" classpathref="classpath.lib" debug="on" fork="false" optimize="off" deprecation="off" depend="on" encoding="UTF-8"/>

		<!--将resource等配置文件打包-->
		<copy todir="${class_temp}">
			<fileset dir="resource"/>
		</copy>
	</target>
	
	<!--创建特定环境的jar包-->		
	<target name="create_special_environment_jar" >
		<mkdir dir="${dist}/${version}/${env}"/>
		<delete quiet="true" file="${dist}/${version}/${env}/${app_name}.jar"/>
		<jar destfile="${dist}/${version}/${env}/${app_name}.jar">
			<fileset dir="${class_temp}"/>
			<fileset dir="${config-env}"/>
		</jar>
	</target>

	<!--创建特定环境的war包-->
	<target name="create_special_environment_war">
		<mkdir dir="${dist}/${version}/${env}"/>
		<delete quiet="true" file="${dist}/${version}/${env}/${app_name}.war"/>
		<copy todir="war/WEB-INF/lib" file="${dist}/${version}/${env}/${app_name}.jar"/>
		<war warfile="${dist}/${version}/${env}/${app_name}.war" webxml="war/WEB-INF/web.xml">
			<fileset dir="war">
				<exclude name="**/classes/**/*"/>
				<exclude name="**/.svn/"/>
			</fileset>
			<fileset file="version.txt"/>
		</war>
		<delete quiet="true" file="war/WEB-INF/lib/${app_name}.jar"/>
	</target>

	<!--清除临时文件-->
	<target name="remove_temp_file">
		<delete dir="${class_temp}"/>
	</target>

	<!--同时创建jar、war-->
	<target name="create_jar_war">
		<antcall target="create_special_environment_jar">
			
			<param name="env" value="${env}"/>
			<param name="config-env" value="${config-env}"/>
		</antcall>
		<antcall target="create_special_environment_war">
			<param name="env" value="${env}"/>
			<param name="config-env" value="${config-env}"/>
		</antcall>
	</target>		
	
	<!--创建project-->
	<target name="create_project">
		<antcall target="create_jar_war">
			<param name="env" value="dev"/>
			<param name="config-env" value="dev-config"/>
		</antcall>

		<antcall target="create_jar_war">
			<param name="env" value="config"/>
			<param name="config-env" value="config/test"/>
		</antcall>
	</target>
	
	<target name="build-all">
		<antcall target="clean"/>
		<antcall target="compile"/>
		<antcall target="create_project"/>
		<antcall target="remove_temp_file"/> 
	</target>
	
</project>
分享到:
评论

相关推荐

    teamcity-ant脚本.rar

    在TeamCity中,Ant脚本扮演着至关重要的角色,因为Ant是Java项目常用的构建工具,能够定义和执行构建过程。下面我们将深入探讨TeamCity与Ant脚本的结合使用及其相关知识点。 1. **Ant简介** Ant是Apache软件基金会...

    ant 脚本从svn上取代码打包代码全,同时包括相关的jar包

    首先,让我们来看看Ant脚本的基本结构。一个典型的Ant构建文件(build.xml)会包含多个目标(target),每个目标是一系列任务的集合。例如,一个简单的构建文件可能包含`compile`、`test`和`package`目标。以下是...

    ant脚本资料ant

    - **XML结构**:Ant脚本以XML格式编写,遵循特定的命名空间和元素结构,如`&lt;project&gt;`、`&lt;target&gt;`、`&lt;task&gt;`等。 - **属性(Attribute)**:任务通常有属性,用来设置参数,例如`srcdir`用于指定源代码目录,`...

    ant脚本-build.xml

    ant脚本例子,一个build.xml模板, 修改后直接运行。

    ant脚本通用模板 ant脚本通用模板

    ### ant脚本通用模板知识点详解 #### 一、Ant简介 Apache Ant 是一个Java环境下的构建工具,主要用于编译、测试、部署等任务的自动化执行。Ant使用XML格式来描述构建过程,使得整个构建流程清晰易懂。对于中小型...

    ant脚本运行junit测试用例

    通过ant对各种语言脚本做运行管理,并输出报告!

    Ant 脚本详解

    在本文中,我们将深入探讨Ant脚本的各个方面。 ### Ant的基本结构 Ant的核心是构建文件,这个文件通常以XML格式编写,包含了多个目标(target)和任务(task)。目标是一系列任务的集合,它们按照特定顺序执行。...

    利用ant脚本 自动构建svn增量.docx

    【Ant脚本自动构建SVN增量】是一种高效且节省资源的软件开发实践,它使得开发和测试团队能够自动化处理从代码提交到构建、打包、再到部署的整个过程。使用Ant,一个基于XML的构建工具,可以创建可重复执行的脚本来...

    shell脚本+ant脚本

    Shell脚本和Ant脚本是两种在IT行业中广泛使用的自动化工具,主要应用于Unix/Linux系统和Java项目的构建。这里我们将深入探讨这两个概念以及它们在实际工作中的应用。 首先,Shell脚本是基于Unix/Linux命令行环境的...

    ant脚本

    通过ant脚本,编译打包android工程

    通过ant脚本,编译打包android工程。 编译打包android工程的ant脚本,Android官方提供的打包脚本。 有注释

    分享一个项目的Ant脚本配制

    标题中的“分享一个项目的Ant脚本配置”表明我们将探讨的是如何使用Apache Ant工具来构建和管理Java项目。Ant是开源的构建工具,广泛应用于Java项目,它可以自动化编译、打包、测试等开发流程。 在描述中提到的...

    ant脚本通用模板222 ant脚本通用模板222

    ### ant脚本通用模板222解析与应用 在软件开发过程中,构建工具扮演着重要的角色,能够自动化处理编译、测试、打包等任务,提高开发效率并减少人为错误。Apache Ant作为一款流行的Java项目构建工具,凭借其简单易用...

    Ant构建中使用JS脚本方法

    4. **交互与控制流**:JavaScript提供了丰富的控制流语句,如`if...else`、`for`循环等,这使得Ant脚本能够根据项目需求进行条件判断和迭代操作。 5. **错误处理**:JavaScript中的异常处理机制也能在Ant脚本中使用...

    ANT脚本学习与开发指导

    这个“ANT脚本学习与开发指导”文档,显然是为了帮助初学者掌握ANT的基本用法和高级技巧。下面,我们将深入探讨ANT的核心概念、用途、基本结构以及如何进行实际操作。 一、ANT简介 ANT是Apache软件基金会的一个项目...

    错误归类学习.zip_ant脚本打包

    在本案例中,"错误归类学习.zip_ant脚本打包"的标题暗示了用户在使用Ant脚本来打包项目时遇到了问题,特别是涉及到调用Web服务(Webservice)时出现了错误。 描述中提到的“ant脚本打包的时候运行访问Webservice是...

    我的ant脚本

    我的ant脚本,用于打包文件,其中包含了常见的jar包工具,学习常用的ant命令

    ant脚本文档学习

    在"ant脚本文档学习"中,你将深入理解Ant的工作原理和核心概念。首先,Ant的构建过程由一系列任务(Tasks)组成,这些任务可以完成如编译源代码、创建JAR文件、运行单元测试等操作。任务通过XML格式的构建文件...

    关于ANT脚本中使用macrodef

    这使得Ant脚本更加模块化,提高了代码的可读性和维护性。本资源是作者在处理将文件复制到远程目录这一常见操作时所编写的,对初学者来说是一份很好的学习材料。 首先,我们要理解Ant的基本结构。Ant是一个基于XML的...

    jsmooth生成exe文件ant脚本

    在jsmooth中,Ant脚本扮演了至关重要的角色,因为它可以自动化生成.exe文件的过程,提高开发效率。 首先,我们需要在项目中包含必要的依赖。"jsmoothgen-ant-0.9.7.jar"是jsmooth的Ant任务实现库,它包含了生成.exe...

Global site tag (gtag.js) - Google Analytics