Ant-打增量包
如何打增量包具体用法见如下百度网盘的文档. 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
Ant-打增量包的更多相关文章
- linux 中部署ant编译的包中缺少问题
今天遇到在window上部署ant编译的包,能运行正常,但部署在linux中出现跳不进jsp中,出现404问题,后来经过排查在jsp中<%@taglib prefix="c" ...
- git制作增量包用于更新代码
1 先找到指定的开始提交id,比如 05104e3475f63e1e49fbfcbd424a4a3801b95645 2 找到结束的提交id,比如 a0eb9bc6d4e1801062877fd435 ...
- SVN导出增量包的方法
此方法是在svn1.7版本基础上进行的操作,其他版本没有验证 第一步.点击右键,选择“TortoiseSVN–> Show log”. 进入日志页面,如下图所示: 第二步.选择版本区间,右键选择 ...
- Ant打jar包时,参数名被修改的问题
https://blog.csdn.net/landehuxi/article/details/42678117 使用Ant打jar包后,发现jar包中的方法名会在前面自动添加了“param”前缀,导 ...
- 根据Eclipse SVN changelog使用ANT自动打增量包
1.获取changeLog 用eclipseSVN的插件功能查看history. 将日志文件导出到本地文件svn_change.log,格式如下 r63 | xiaodaoshi | 2014-08- ...
- eclipse中ant打war包
注:有可能打包失败是eclipse没有集成的原因,用我自己的eclipse可以,同事那就有可能打包失败,一定要注意这点. 1.先在eclipse中集成或自己安装解压ant,总之有可用的ant就好. 2 ...
- ant 打 jar 包添加 manifest.mf 文件
经查询 ant 有 <manifest> 任务可以创建 manifest文件(https://ant.apache.org/manual/Tasks/manifest.html) 但尝试在 ...
- Ant打jar包指定MainClass
一般用ant打jar的时候不用指定程序的入口!这个jar一般是给其他app引用的. 但是如果该jar就是程序的启动jar.例如: java -jar abc.jar 这个时候需要指定jar的入口类! ...
- ant生成war包的简单实现
按网上的操作,实现一下. build.xml: <?xml version="1.0" ?> <project name ="antwebproject ...
随机推荐
- Python 接口:从协议到抽象基类
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 15.0px Helvetica } 抽象基类的常见用途:实现接口时作为超类使用.然后,说明抽象基类如何检查 ...
- Scikit-Learn框架
1. Dataset scikit-learn提供了一些标准数据集(datasets),比如用于分类学习的iris 和 digits 数据集,还有用于归约的boston house prices 数据 ...
- Entity Framework - 基于外键关联的单向一对一关系
代码的世界,原以为世界关系很简单,确道是关系无处不在.NET世界里ORM框架中EntityFramework作为其中翘楚,大大解放了搬砖工作的重复工作,着实提高了不少生产力,而也碰到过不少问题!比如关 ...
- 用IO流中的File类来创建文件及目录
题目如下: 设计一个命令窗口程序,要求按照如下的格式显示 例如:===利用命令窗口完成文件的操作===(1)创建目录 (2)创建文件 (3)删除目录 (4)删除文件 ===现在正在做创建目录的操作== ...
- pickle模块的使用python3
Python的pickle模块实现了基本的数据序列和反序列化.通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储:通过pickle模块的反序列化操作,我们能够从文件 ...
- Openfire分析之二:主干程序分析
引言 宇宙大爆炸,于是开始了万物生衍,从一个连人渣都还没有的时代,一步步进化到如今的花花世界. 然而沧海桑田,一百多亿年过去了-. 好复杂,但程序就简单多了,main()函数运行,敲个回车,一行Hel ...
- [js高手之路]设计模式系列课程-委托模式实战微博发布功能
在实际开发中,经常需要为Dom元素绑定事件,如果页面上有4个li元素,点击对应的li,弹出对应的li内容,怎么做呢?是不是很简单? 大多数人的做法都是:获取元素,绑定事件 <ul> < ...
- python 之 计数器(counter)
Counter是对字典类型的补充,用于追踪值的出现次数. ps:具备字典的所有功能 + 自己的功能 c = Counter('abcdeabcdabcaba') print c 输出:Counter( ...
- Rxjava2视频笔记
观察者模式 观察者模式是一对多的模式,多个观察者同时监听一个主题,当主题更新时,会同时通知所有的观察者 subject –>observer 学习新技术的步骤 1.官方文档的查阅和学习 2.Go ...
- 多线程编程学习一(Java多线程的基础).
一.进程和线程的概念 进程:一次程序的执行称为一个进程,每个 进程有独立的代码和数据空间,进程间切换的开销比较大,一个进程包含1—n个线程.进程是资源分享的最小单位. 线程:同一类线程共享代码和数据空 ...