Ant-打增量包

时间:2021-12-30 00:16:03

如何打增量包具体用法见如下百度网盘的文档. http://pan.baidu.com/s/1gd5pAp1

1, ant 打源码增量包

build_incremental_src.xml 内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<!-- ======================================================================
2014-10-31
project:ops-web 运维
description:生成增量ZIP包
====================================================================== -->

<project name="ops-web" default="default">
<property name="TAR_DIR" value="./update" />
<!--
源码增量包,设置为项目所在的路径
!!!根据实际修改!!!
-->
<property name="WEB_DIR" value="../ops-web" />

<property name="TEMP_DIR" value="./tempsrc" />
<!-- 临时文件路径-->
<property name="ops-web_WAR" value="${TEMP_DIR}/"/>
<!-- 版本文件存放路径,这个目录下会存放txt文件 -->
<property name="VERSION_DIR" value="./version"/>

<!-- =================================
target: 默认任务
================================= -->
<target name="default" depends="tar_bate,clean" description="">
</target>

<!-- - - - - - - - - - - - - - - - - -
target: init 初始化
- - - - - - - - - - - - - - - - - -->
<target name="init">
<tstamp>
<!-- 生成当前日期-->
<format property="TODAY" pattern="yyyyMMdd" locale="cn" />
</tstamp>

<mkdir dir="${TEMP_DIR}" />
<mkdir dir="${TAR_DIR}" />
<mkdir dir="${ops-web_WAR}"/>
</target>

<!-- - - - - - - - - - - - - - - - - -
target: tar 打测试环境zip包
- - - - - - - - - - - - - - - - - -->
<target name="tar_bate" depends="init">

<copy todir="${ops-web_WAR}" overwrite="true">
<fileset dir="${WEB_DIR}">
<includesfile name="${VERSION_DIR}/src_${TODAY}.txt"/>
</fileset>
</copy>
<!-- zip所在的路径以及zip包文件名,!!!文件名自行修改!!!-->
<zip destfile="${TAR_DIR}/ops-web_src_${TODAY}.zip">
<tarfileset dir="${TEMP_DIR}">
<include name="**/*.*"/>
</tarfileset>
</zip>
</target>

<!-- - - - - - - - - - - - - - - - - -
target: clean 清理
- - - - - - - - - - - - - - - - - -->
<target name="clean">
<delete dir="${TEMP_DIR}" />
</target>

</project>

src_20141103.txt 文本内容格式如下, 除了具体文件之外,也可以是一个文件夹,文件夹以 / 结尾.

可以使用通配符  *.java ,表示某一个目录下的所有Java文件

src/main/java/opstools/maintain/device/service/DeviceInfoServiceImpl.java
src/main/java/opstools/maintain/device/action/DeviceInfoAction.java

src/main/webapp/birt/2_trans_report_query.rpttemplate
src/main/webapp/birt/his_2_trans_report_query.rpttemplate

2, ant 打发布增量包

build_incremental.xml 内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<!-- ======================================================================
2014-10-31
project:ops-web 运维
description:生成增量ZIP包
====================================================================== -->

<project name="ops-web" default="default">
<property name="TAR_DIR" value="./update" />
<!--
对于maven项目来说,在eclipse中使用Run as - Maven install ,编译打包
然后设置WEB_DIR的根目录为target下的ops-web
!!! 自行修改为自己的目录!!!
-->
<property name="WEB_DIR" value="./target/ops-web" />

<property name="TEMP_DIR" value="./temp" />

<!-- !!!ops-web.war 为全量war包时的名字,也是应用的名字!!! -->
<property name="ops-web_WAR" value="${TEMP_DIR}/ops-web.war"/>
<!-- 版本文件存放路径 -->
<property name="VERSION_DIR" value="./version"/>

<!-- =================================
target: 默认任务
================================= -->
<target name="default" depends="tar_bate,clean" description="">
</target>

<!-- - - - - - - - - - - - - - - - - -
target: init 初始化
- - - - - - - - - - - - - - - - - -->
<target name="init">
<tstamp>
<format property="TODAY" pattern="yyyyMMdd" locale="cn" />
</tstamp>

<mkdir dir="${TEMP_DIR}" />
<mkdir dir="${TAR_DIR}" />
<mkdir dir="${ops-web_WAR}"/>
</target>

<!-- - - - - - - - - - - - - - - - - -
target: tar 打测试环境zip包
- - - - - - - - - - - - - - - - - -->
<target name="tar_bate" depends="init">

<copy todir="${ops-web_WAR}" overwrite="true">
<fileset dir="${WEB_DIR}">
<includesfile name="${VERSION_DIR}/class_${TODAY}.txt"/>
</fileset>
</copy>
<!-- !!!生成zip包的文件名,可自行修改!!!-->
<zip destfile="${TAR_DIR}/ops-web_${TODAY}.zip">
<tarfileset dir="${TEMP_DIR}">
<include name="**/*.*"/>
</tarfileset>
</zip>
</target>

<!-- - - - - - - - - - - - - - - - - -
target: clean 清理
- - - - - - - - - - - - - - - - - -->
<target name="clean">
<delete dir="${TEMP_DIR}" />
</target>

</project>

class_20141103.txt 文本内容格式如下, 除了具体文件之外,也可以是一个文件夹,文件夹以 / 结尾.

可以使用通配符  *.class ,表示某一个目录下的所有class文件

birt/
maintain/adsConf/create.jsp
WEB-INF/classes/opstools/maintain/audit/action/AuditAction.class