build.properties
svnant.version=1.0.0
svnant.repository.user=wangxj
svnant.repository.password=123456
svnlib.dir=/usr/src/apache-ant-1.7.1/lib
svnant.jar=${svnlib.dir}/svnant.jar
svnClientAdapter.jar=${svnlib.dir}/svnClientAdapter.jar
svnjavahl.jar=${svnlib.dir}/svnjavahl.jar
jdk_home=/usr/java/jdk1.6.0_11
base.dir=/home/test/class4_ui/routers/
svnant.ui.url=svn://192.168.1.125/newclass4/branches/2.0final/UI
svnant.jarlib.url=svn://192.168.1.125/newclass4/branches/2.0final/UI/www/WEB-INF/lib
svnant.jetty.url=svn://192.168.1.125/newclass4/branches/2.0final/UI/conf/jetty
svnant.conf.url=svn://192.168.1.125/newclass4/branches/2.0final/UI/conf/conf
build.xml
<?xml version="1.0"?>
<project name="build-project" basedir="." default="main">
<target name="main" depends="checkout_lib,checkout_ui,compile_ui,makewar"/>
<property file="build.properties"/>
<path id="project.classpath">
<pathelement location="${svnjavahl.jar}"/>
<pathelement location="${svnant.jar}"/>
<pathelement location="${svnClientAdapter.jar}"/>
</path>
<taskdef resource="svntask.properties" classpathref="project.classpath"/>
<!--*******************************************check jetty**************************************************-->
<target name="check_jetty">
<delete dir="${base.dir}/jetty"/>
<mkdir dir="${base.dir}/jetty"/>
<svn username="${svnant.repository.user}" password="${svnant.repository.password}">
<checkout url="${svnant.jetty.url}" destPath="${base.dir}/jetty"/>
</svn>
</target>
<target name="clean_UI">
<delete dir="${base.dir}/output_ui"/>
</target>
<target name="mk_UI">
<mkdir dir="${base.dir}/output_ui"/>
<mkdir dir="${base.dir}/output_ui/src_ui"/>
<mkdir dir="${base.dir}/output_ui/class_ui"/>
<mkdir dir="${base.dir}/output_ui/www_ui"/>
<mkdir dir="${base.dir}/output_ui/web_ui"/>
</target>
<target name="clear_UPLOAD">
<delete dir="${base.dir}/upload"></delete>
</target>
<target name="mk_UPLOAD">
<mkdir dir="${base.dir}/upload"/>
</target>
<target name="clear_TEMP">
<delete dir="${base.dir}/temp"></delete>
</target>
<target name="mk_TEMP">
<mkdir dir="${base.dir}/temp"/>
</target>
<!--*******************************************check conf(data.properties)**************************************************-->
<target name="check_conf" >
<delete dir="${base.dir}/conf"></delete>
<mkdir dir="${base.dir}/conf"/>
<svn username="${svnant.repository.user}" password="${svnant.repository.password}">
<checkout url="${svnant.conf.url}" destPath="${base.dir}/conf"/>
</svn>
</target>
<target name="checkout_lib">
<delete dir="${base.dir}/jar_lib"/>
<mkdir dir="${base.dir}/jar_lib"/>
<svn username="${svnant.repository.user}" password="${svnant.repository.password}">
<checkout url="${svnant.jarlib.url}" revision="HEAD" destPath="${base.dir}/jar_lib"/>
</svn>
</target>
<!--*******************************************bulid webui**************************************************-->
<target name="checkout_ui" depends="clean_UI,mk_UI,clear_UPLOAD,mk_UPLOAD,clear_TEMP,mk_TEMP">
<svn username="${svnant.repository.user}" password="${svnant.repository.password}">
<checkout url="${svnant.ui.url}/src" revision="HEAD" destPath="${base.dir}/output_ui/src_ui"/>
</svn>
<svn username="${svnant.repository.user}" password="${svnant.repository.password}">
<checkout url="${svnant.ui.url}/www" revision="HEAD" destPath="${base.dir}/output_ui/www_ui"/>
</svn>
<svn username="${svnant.repository.user}" password="${svnant.repository.password}">
<checkout url="${svnant.ui.url}/www/WEB-INF" revision="HEAD" destPath="${base.dir}/output_ui/web"/>
</svn>
</target>
<target name="compile_ui" description="compile_ui">
<javac destdir="${base.dir}/output_ui/class_ui" classpath="${base.dir}/jar_lib/xmlrpc-client-3.1.1.jar:
${base.dir}/jar_lib/cos.jar:
${base.dir}/jar_lib/xmlrpc-common-3.1.1.jar:
${base.dir}/jar_lib/ws-commons-util-1.0.2.jar:
${base.dir}/jar_lib/common-annotations.jar:
${base.dir}/jar_lib/commons-logging.jar:
${base.dir}/jar_lib/postgresql-8.1-413.jdbc3.jar:
${base.dir}/jar_lib/servlet-api-3.0.pre4.jar:
${base.dir}/jar_lib/xom-1.2b2.jar:
${base.dir}/jar_lib/jstl.jar:
${base.dir}/jar_lib/log4j-1.2.15.jar:
${base.dir}/jar_lib/spring-beans.jar:
${base.dir}/jar_lib/spring-context.jar:
${base.dir}/jar_lib/spring-core.jar:
${base.dir}/jar_lib/spring-web.jar:
${base.dir}/jar_lib/spring-webmvc.jar:
${base.dir}/jar_lib/standard.jar:
${base.dir}/jar_lib/commons-dbcp.jar:
${base.dir}/jar_lib/spring.jar:
${base.dir}/jar_lib/spring-jdbc.jar:
${base.dir}/jar_lib/commons-fileupload-1.2.1.jar:
${base.dir}/jar_lib/commons-collections.jar:
${base.dir}/jar_lib/jcommon-1.0.16.jar:
${base.dir}/jar_lib/jfreechart-1.0.13.jar:
${base.dir}/jar_lib/memcached_2.4.2.jar:
${base.dir}/jar_lib/je-4.0.71.jar:
${base.dir}/jar_lib/berkeleyDB.jar
${base.dir}/jar_lib/spring-modules-validation-0.7.jar"
srcdir="${base.dir}/output_ui/src_ui" debug="on" failonerror="true"
nowarn="off" memoryMaximumSize="256m" fork="true" executable="${jdk_home}/bin/javac">
</javac>
<mkdir dir="${base.dir}/output_ui/class_ui/com/yht/i18n"/>
<copyfile dest="${base.dir}/output_ui/class_ui/applicationContext.xml" src="${base.dir}/output_ui/src_ui/applicationContext.xml"/>
<copyfile dest="${base.dir}/output_ui/class_ui/com/yht/i18n/digit.properties" src="${base.dir}/output_ui/src_ui/com/yht/i18n/digit.properties"/>
<copyfile dest="${base.dir}/output_ui/class_ui/com/yht/i18n/entity.properties" src="${base.dir}/output_ui/src_ui/com/yht/i18n/entity.properties"/>
<copyfile dest="${base.dir}/output_ui/class_ui/com/yht/i18n/index.properties" src="${base.dir}/output_ui/src_ui/com/yht/i18n/index.properties"/>
<copyfile dest="${base.dir}/output_ui/class_ui/com/yht/i18n/product.properties" src="${base.dir}/output_ui/src_ui/com/yht/i18n/product.properties"/>
<copyfile dest="${base.dir}/output_ui/class_ui/com/yht/i18n/user.properties" src="${base.dir}/output_ui/src_ui/com/yht/i18n/user.properties"/>
<copyfile dest="${base.dir}/output_ui/class_ui/com/yht/i18n/err.properties" src="${base.dir}/output_ui/src_ui/com/yht/i18n/err.properties"/>
<copyfile dest="${base.dir}/output_ui/class_ui/com/yht/i18n/debugTool.properties" src="${base.dir}/output_ui/src_ui/com/yht/i18n/debugTool.properties"/>
<copydir dest="${base.dir}/jetty/lib" src="${base.dir}/jar_lib"></copydir>
<delete dir="${base.dir}/output_ui/www_ui/WEB-INF/lib"></delete>
<copyfile dest="${base.dir}/output_ui/class_ui/spring-servlet.xml" src="${base.dir}/output_ui/www_ui/WEB-INF/spring-servlet.xml"/>
</target>
<!--*******************************************create war**************************************************-->
<target name="makewar">
<war destfile="${base.dir}/jetty/webapps/app.war" webxml="${base.dir}/output_ui/web/web.xml">
<classes dir="${base.dir}/output_ui/class_ui"/>
<fileset dir="${base.dir}/output_ui/www_ui"/>
</war>
</target>
<!--*******************************************commit war to svn**************************************************-->
</project>
build .sh
#!/bin/bash
rm -rf build
mkdir build
svn co svn://192.168.1.125/newclass4/branches/2.0final/UI/build/ --username wangxj --password 123456 ./build
cd build
/usr/src/apache-ant-1.7.1/bin/ant
cd ..
./start_jetty.sh
分享到:
相关推荐
在TeamCity中,Ant脚本扮演着至关重要的角色,因为Ant是Java项目常用的构建工具,能够定义和执行构建过程。下面我们将深入探讨TeamCity与Ant脚本的结合使用及其相关知识点。 1. **Ant简介** Ant是Apache软件基金会...
首先,让我们来看看Ant脚本的基本结构。一个典型的Ant构建文件(build.xml)会包含多个目标(target),每个目标是一系列任务的集合。例如,一个简单的构建文件可能包含`compile`、`test`和`package`目标。以下是...
- **XML结构**:Ant脚本以XML格式编写,遵循特定的命名空间和元素结构,如`<project>`、`<target>`、`<task>`等。 - **属性(Attribute)**:任务通常有属性,用来设置参数,例如`srcdir`用于指定源代码目录,`...
ant脚本例子,一个build.xml模板, 修改后直接运行。
### ant脚本通用模板知识点详解 #### 一、Ant简介 Apache Ant 是一个Java环境下的构建工具,主要用于编译、测试、部署等任务的自动化执行。Ant使用XML格式来描述构建过程,使得整个构建流程清晰易懂。对于中小型...
通过ant对各种语言脚本做运行管理,并输出报告!
在本文中,我们将深入探讨Ant脚本的各个方面。 ### Ant的基本结构 Ant的核心是构建文件,这个文件通常以XML格式编写,包含了多个目标(target)和任务(task)。目标是一系列任务的集合,它们按照特定顺序执行。...
【Ant脚本自动构建SVN增量】是一种高效且节省资源的软件开发实践,它使得开发和测试团队能够自动化处理从代码提交到构建、打包、再到部署的整个过程。使用Ant,一个基于XML的构建工具,可以创建可重复执行的脚本来...
Shell脚本和Ant脚本是两种在IT行业中广泛使用的自动化工具,主要应用于Unix/Linux系统和Java项目的构建。这里我们将深入探讨这两个概念以及它们在实际工作中的应用。 首先,Shell脚本是基于Unix/Linux命令行环境的...
通过ant脚本,编译打包android工程。 编译打包android工程的ant脚本,Android官方提供的打包脚本。 有注释
标题中的“分享一个项目的Ant脚本配置”表明我们将探讨的是如何使用Apache Ant工具来构建和管理Java项目。Ant是开源的构建工具,广泛应用于Java项目,它可以自动化编译、打包、测试等开发流程。 在描述中提到的...
### ant脚本通用模板222解析与应用 在软件开发过程中,构建工具扮演着重要的角色,能够自动化处理编译、测试、打包等任务,提高开发效率并减少人为错误。Apache Ant作为一款流行的Java项目构建工具,凭借其简单易用...
4. **交互与控制流**:JavaScript提供了丰富的控制流语句,如`if...else`、`for`循环等,这使得Ant脚本能够根据项目需求进行条件判断和迭代操作。 5. **错误处理**:JavaScript中的异常处理机制也能在Ant脚本中使用...
这个“ANT脚本学习与开发指导”文档,显然是为了帮助初学者掌握ANT的基本用法和高级技巧。下面,我们将深入探讨ANT的核心概念、用途、基本结构以及如何进行实际操作。 一、ANT简介 ANT是Apache软件基金会的一个项目...
在本案例中,"错误归类学习.zip_ant脚本打包"的标题暗示了用户在使用Ant脚本来打包项目时遇到了问题,特别是涉及到调用Web服务(Webservice)时出现了错误。 描述中提到的“ant脚本打包的时候运行访问Webservice是...
我的ant脚本,用于打包文件,其中包含了常见的jar包工具,学习常用的ant命令
在"ant脚本文档学习"中,你将深入理解Ant的工作原理和核心概念。首先,Ant的构建过程由一系列任务(Tasks)组成,这些任务可以完成如编译源代码、创建JAR文件、运行单元测试等操作。任务通过XML格式的构建文件...
这使得Ant脚本更加模块化,提高了代码的可读性和维护性。本资源是作者在处理将文件复制到远程目录这一常见操作时所编写的,对初学者来说是一份很好的学习材料。 首先,我们要理解Ant的基本结构。Ant是一个基于XML的...
在jsmooth中,Ant脚本扮演了至关重要的角色,因为它可以自动化生成.exe文件的过程,提高开发效率。 首先,我们需要在项目中包含必要的依赖。"jsmoothgen-ant-0.9.7.jar"是jsmooth的Ant任务实现库,它包含了生成.exe...