`
happysunxf
  • 浏览: 47208 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

ant脚本编写

 
阅读更多

<?xml version="1.0" encoding="UTF-8"?>

<!--构建项目名称-->

<project name="sms_project" basedir="." default="release-all-project">

<!--声明全局变量-->

<property name="src" location="src"/>
<property name="release" location="release"/>
<property name="build" location="build"/>
<property name="build_classes" location="build/classes"/>
<property name="build_lib" location="build/lib"/>
<property name="core_lib" location="lib" />
<property name="mule_lib" location="F:\new\resource\mule-standalone-3.2.1\lib" />
<property name="mule_app" location="F:\new\resource\mule-standalone-3.2.1\apps" />

<!--一个核心包的target标签,属于编译标签-->

<target name="SmsFramework" depends="SmsEntity" >
<delete dir="../SmsFramework/build"/>
<delete dir="../SmsFramework/release"/>
<mkdir dir="../SmsFramework/release"/>
<mkdir dir="../SmsFramework/build/classes"/>
<javac srcdir="../SmsFramework/src" destdir="../SmsFramework/build/classes" includes="**/*.*" >
<compilerarg line="-encoding UTF-8 "/>
<classpath>
<fileset dir="${core_lib}">
<include name="**/*.jar"/>
</fileset>
<fileset dir="${mule_lib}" >
<include name="**/*.jar"/>
</fileset>
</classpath>
</javac>
<copy file="../SmsFramework/src/com/sms/conf/applicationContext.xml" todir="../SmsFramework/build/classes/com/sms/conf" />
<jar destfile="../SmsFramework/release/SmsFramework.jar" basedir="../SmsFramework/build/classes" />
<jar destfile="${core_lib}/SmsFramework.jar" basedir="../SmsFramework/build/classes" />
<delete dir="../SmsFramework/build"/>
</target>


<!--实体类所需要的target标签,属于编译类标签-->
<target name="SmsEntity" >
<delete dir="../SmsEntity/build"/>
<delete dir="../SmsEntity/release"/>
<mkdir dir="../SmsEntity/release"/>
<mkdir dir="../SmsEntity/build/classes"/>
<javac srcdir="../SmsEntity/src" destdir="../SmsEntity/build/classes" includes="**/*.*" >
<compilerarg line="-encoding UTF-8 "/>
<classpath>
<fileset dir="${core_lib}">
<include name="**/*.jar"/>
</fileset>
</classpath>
</javac>
<jar destfile="../SmsEntity/release/SmsEntity.jar" basedir="../SmsEntity/build/classes" />
<jar destfile="${core_lib}/SmsEntity.jar" basedir="../SmsEntity/build/classes" />
<delete dir="../SmsEntity/build"/>
</target>

<!--接口子项目的target标签,属于编译类标签-->

<target name="SmsInterface" depends="SmsFramework" >
<delete dir="../SmsInterface/build"/>
<delete dir="../SmsInterface/release"/>
<mkdir dir="../SmsInterface/release"/>
<mkdir dir="../SmsInterface/build/classes"/>

<javac srcdir="../SmsInterface/src" destdir="../SmsInterface/build/classes" includes="**/*.*" >
<compilerarg line="-encoding UTF-8 "/>
<classpath>
<fileset dir="${core_lib}">
<include name="**/*.jar"/>
</fileset>
<fileset dir="${mule_lib}" >
<include name="**/*.jar"/>
</fileset>
</classpath>
</javac>

<copy file="../SmsInterface/src/com/ewing/conf/applicationContext.xml" todir="../SmsInterface/build/classes/com/ewing/conf" />
<jar destfile="../SmsInterface/release/SmsInterface.jar" basedir="../SmsInterface/build/classes" />
<jar destfile="${core_lib}/SmsInterface.jar" basedir="../SmsInterface/build/classes" />
<delete dir="../SmsInterface/build"/>
</target>


<!--生产项目的taget标签,属于生成类标签-->
<target name="package_all">
<copy file="${src}/applicationContext.xml" todir="${build_classes}" />
<copy file="${src}/config.properties" todir="${build_classes}" />
<copy file="${src}/sms.xml" tofile="${build}/mule-config.xml" />
<copy file="${src}/log4j.xml" tofile="${build_classes}/log4j.xml" />
<copydir dest="${build_lib}" src="${core_lib}" />
<zip destfile="${release}/sms.zip" basedir="${build}" />
<copy file="${release}/sms.zip" todir="${mule_app}" ></copy>
<delete dir="${build}"/>
</target>

<!--生产项目的taget标签,属于生成类标签-->

<target name="package_sms_interface">
<copy file="${src}/applicationContext.xml" todir="${build_classes}" />
<copy file="${src}/config.properties" todir="${build_classes}" />
<copy file="${src}/sms_interface.xml" tofile="${build}/mule-config.xml" />
<copy file="${src}/log4j.xml" tofile="${build_classes}/log4j.xml" />
<copydir dest="${build_lib}" src="${core_lib}" />
<delete file="${build_lib}/EwingSubsystemSmsCheck.jar" />
<zip destfile="${release}/sms_interface.zip" basedir="${build}" />
<copy file="${release}/sms_interface.zip" todir="${mule_app}" ></copy>
<delete dir="${build}"/>
</target>

<!--清理项目的taget标签,属于清理类标签-->

<target name="clean">
<delete dir="${build_classes}"/>
<delete dir="${build_lib}"/>
<mkdir dir="${release}"/>
<mkdir dir="${build_classes}"/>
<mkdir dir="${build_lib}"/>
<delete file="lib/SmsFramework.jar" />
<delete file="lib/SmsEntity.jar" />
<delete file="lib/SmsInterface.jar" />
</target>

<!-- 发布接口一个项目target标签,属于发布类标签 -->

<target name="release-EwingSubsystemSmsInterface" depends="clean,EwingSubsystemSmsInterface,package_sms_interface" />
<!-- 发布所有项目的target标签,属于发布类标签 -->

<target name="release-all-project" depends="release-EwingSubsystemSmsInterface" />

</project>
分享到:
评论

相关推荐

    ant 脚本编写

    NULL 博文链接:https://hollowinheart.iteye.com/blog/962906

    ant脚本运行junit测试用例

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

    ant的基本配置说明

    为什么需要手工去编写ant脚本呢,很多IDE工具会为我们生成ant脚本阿?有人会这么问。要知道靠IDE自动生成的东西,总是有这样那样的缺点,以及不足,他不能完全满足你的很多需要。如果出现了问题,你不得不手动修改...

    ant自动发布工程

    ant 通过编写脚本就能进行java工程的自动发布

    使用SVN,Ant制作发布版本

    执行命令是ant的基本目标,把完成一项任务所需的命令按照正常的顺序写入ant脚本文件,ant调用脚本顺序执行,便可以完成一项大的任务。脚本具有一次完成编写,多次使用的特性,适合可重复的,顺序完成的任务。本篇...

    apache-ant-1.9.3-src.tar

    每个ant脚本(缺省叫build.xml)中设置了一系列任务(target):比如对于一个一般的项目可能需要有以下任务。 * 任务1:usage 打印本脚本的帮助信息(缺省) * 任务2:clean 清空初始化环境 * 任务3:javadoc 生成...

    Ant使用指南

    Ant使用指南,适合软件测试人员和开发人员编写ant脚本。

    photoshop脚本动作

    很不错的.ant文件,加入photoshop中使之功能更加强大。

    JAVA ANT 自动备份程序

    防止代码丢失编写了一个自动备份的脚本。编写XML制定备份的原路径,备份目标地址路径和需要备份的时间即可。增量备份

    Ant权威指南

    Ant并非脚本语言 构建文件授权问题 第四章 AntDataType 已定义DataType XML属性约定 argument DataType environment DataType filelist DataType fileset DataType, patternset DataType filtersetDataType path ...

    Ant使用指南_发布工程师必备

    如果您正在编写 Java 代码却还没有使用 Ant,那么本教程就是为您准备的。不管您当前是否在使用某种不同的生成工具,或者根本就没有使用生成工具,了解关于Ant 的更多知识或许会促使您转而使用它。 如果已经在使用 ...

    一个使用ant及junit进行单元测试的简单例子

    NULL 博文链接:https://qn-lf.iteye.com/blog/752456

    Apache Ant自动化脚本入门教程及常用命令介绍

    Ant是纯Java语言编写的,所以具有很好的跨平台性 操作简单。Ant是由一个内置任务和可选任务组成的。Ant运行时需要一个XML文件(构建文件)。 Ant通过调用target树,就可以执行各种任务。由于Ant构建文件 是XML格式的...

    Ant 1.9.2 API (CHM格式)

    Ant功能强大的地方在于,程序员不仅能通过编写Ant的脚本(build.xml)来进行各种文件部署管理操作,还可以通过调用Ant的丰富的API,甚至扩展Ant的API进行编程。 1. 目录操作: 1) 创建目录 1. Project prj=new ...

    ant学习配套电子书教程

    1、语法简单易学,脚本使用xml文件编写. 2、易于使用,构建过程自动化. 3、跨平台,java类路径和目录结构都是以可移植的方式处理. 4、速度快,向编译和打包这样的java常规工作都可以在ant的jvm中进行,节省了启动其他...

    ari.js:使用 Apache Ant 的全部功能在 Javascript 中编写构建脚本

    这是什么 一个用 Javascript 编写构建脚本的库,具有 Apache Ant 的全部功能。

    GradleAndroid最新自动化编译脚本教程

    为什么不使用Ant做自动化编译脚本,因为ant上手快,但是维护起来太不方便了,有了Gradle你可以跟项目组的同事说,用Ant的孩子们别苦逼的维护了,赶紧换成gradle吧。本文面向gradle新手或者以前使用过gradle低版本的...

    JUnit单元测试自动构建脚本

    基于Ant自动构建JUnit单元测试批量执行测试用例并生成报表。

    jocky 混肴编译rar包(ant和插件俩个版本)

    在应用的开发过程中,我们往往都会有一个Ant脚本,通过该脚本,能够对应用进行编译、打包、发布等一系列过程。因此,Jocky的最佳切入点便是对Ant的支持。 在Ant中使用Jocky非常简单: 1. 将lib\jocky-ant.jar ...

    ScalaMake:Scala 作为一种 shell 脚本语言,其中加入了一些 Make 和 Ant 以作为很好的衡量标准。 Specs 测试说明了您可以执行的大部分操作,并包含在二进制 .zip 中,并附有说明如何开始的 README

    有时,您所需要的只是处理文件系统约束并根据文件系统中的依赖关系编写 Scala、Java 或平台 shell 命令的脚本。 有时你所需要的只是一个像“Make”这样的跨平台的东西。 有时您只需要 ScalaMake。 在内部,我使用 ...

Global site tag (gtag.js) - Google Analytics