1.关键代码,获取时间

<tstamp>
<format property="touch.time" pattern="yyyy/MM/dd hh:mm" />
</tstamp>

2.获取本地svn版本

<target name="version"  depends="init" >
  <typedef resource="com/googlecode/svntask/svntask.xml">
<classpath>
<fileset dir="${lib}">
<include name="svnkit.jar"/>
<include name="svntask.jar"/>
</fileset>
</classpath>
</typedef>
<svn>
<info path="E:\worksapce2\ACService2" revisionProperty="revisionVersion" />
</svn>
<property name="version" value="${revisionVersion}" />
<echo message="version: ${version}" />
</target>

3. 项目示例

<project name="build_pub" default="jar" basedir=".">

	<property name="class.dir" value="WEB-INF/classes"/>
<property name="src.dir" value="src" />
<property name="build.dir" value="targetJar" />
<property name="jar.name" value="ac-api.jar" />
<property name="lib" value="WEB-INF/lib" /> <path id="classpath">
<fileset dir="${lib}" includes="**/*.jar"/>
</path> <target name="init">
<echo message="+--- init start ---+" />
<tstamp />
<delete file="${build.dir}/${jar.name}" />
<echo message="+--- init end ---+" />
</target>
<target name="version" depends="init" >
<typedef resource="com/googlecode/svntask/svntask.xml">
<classpath>
<fileset dir="${lib}">
<include name="svnkit.jar"/>
<include name="svntask.jar"/>
</fileset>
</classpath>
</typedef>
<svn>
<info path="E:\worksapce2\ACService2" revisionProperty="revisionVersion" />
</svn>
<property name="version" value="${revisionVersion}" />
<echo message="version: ${version}" />
</target>
<target name="jar" depends="version" >
<echo message="+--- jar *.class files start ---+" />
<tstamp>
<format property="touch.time" pattern="yyyy/MM/dd hh:mm" />
</tstamp>
<pathconvert property="mf.classpath" pathsep="lib/"> <path refid="classpath" /> <flattenmapper /> </pathconvert>
<jar destfile="${build.dir}/${jar.name}" update="true">
<fileset dir="${class.dir}" includes="com/inspur/api/ac/**,com/inspur/api/common/**">
</fileset>
<manifest>
<attribute name="user-name" value="liyx"/>
<attribute name="svn-version" value="${version}"/>
<attribute name="package-time" value="${touch.time}"/>
</manifest>
</jar>
<echo message="+--- jar *.class files end ---+" />
</target>
</project>

  4.注意事项

  注意target直接的依赖关系,另外获取本地svn号需要依赖本地jar包,分别是svntask.jar和svnkit.jar,我分享的下载地址分别为:

http://mobile.qzone.qq.com/l?g=1357&sharekey=7ab0de0e131e16e9d859dff5bc1c5ea9

 http://mobile.qzone.qq.com/l?g=1357&sharekey=cdbeb37e11b4395fd3dad86edc02e197

ant脚本打jar包 自动获取时间以及项目svn版本号的更多相关文章

  1. 把封装脚本做成jar包

    前提: eclipse, selenium, maven 把二次封装过的脚本做成jar包, 这样可以在新建工程里也调用封装过的方法. 实现步骤: 1. project 右键 => maven = ...

  2. Ubuntu 16.04使用“从互联网自动获取”时间无法写入硬件BIOS的奇怪问题

    目前发现的就是这个问题,只能手动同步到BIOS. 如果是手动设置过时间,那么可以正常同步到BIOS. 而如果切换到从互联网自动获取时间时,是不能同步到BIOS的,但是界面上的时间确实最新的. 并且这个 ...

  3. [JAR包] android引入JAR包,打包成JAR包,打包成Library项目,导入Library项目

    (1)项目导入JAR包:1.在项目目录里建立一个libs目录,将外部jar包拷贝在里面.2.右键点击项目,Bulid Path->Configure Build Path3.在设置Libraie ...

  4. 【jar】JDK将单个的java文件打包为jar包,并引用到项目中使用【MD5加密】

    ==================================================================================================== ...

  5. 关于IDEA的Maven打jar包springboot项目问题,打成可执行jar包,IDEA创建的maven项目和spring initializr项目

    Spring Initializr创建的项目 源文件地址 https://github.com/TaoPanfeng/maven-package 项目的创建步骤 进行打包 clear package ...

  6. 使用github作为maven仓库存放发布自己的jar包依赖 实现多个项目公共部分代码的集中,避免团队中多个项目之间代码的复制粘贴

    使用github作为maven仓库存放发布自己的jar包依赖 实现多个项目公共部分代码的集中,避免团队中多个项目之间代码的复制粘贴. 1.首先在本地maven位置的配置文件setting.xml(没有 ...

  7. 利用Ant脚本生成war包的详细步骤

    使用ant脚本前的准备 1.下载一个ant安装包.如:apache-ant-1.8.4-bin.zip.解压到E盘. 2.配置环境变量.新增ANT_HOME:E:\apache-ant-1.8.4:P ...

  8. Mysql设置字段自动获取时间

    问题:现在在用户表中有一个字段表示用户创建的时间 第一个想法是写一段程序获得系统当前时间,想想就太麻烦了,果断放弃,之后想到了存储过程和函数,再想想还要编写存储过程或者函数的代码,有点放弃的想法,但是 ...

  9. spring boot 打jar包,获取resource路径下的文件

    前言:最近在spring boot项目静态类中获取resource路径下文件,在idea中启动都可以获取,但是打包后变成了jar包 就无法获取到. 我想到了两种方法,一种是根据http访问静态资源比如 ...

随机推荐

  1. setImageResource和setImageDrawable区别

    ImageView设置图片的方式有很多钟,可以在xml里面写android:src=”@drawable/xxx”,也可以在java代码里面设置. 在java里面的设置方式也有多种,方法包括:setI ...

  2. Filezilla 多目录的访问设置

    [转:http://hi.baidu.com/yangjie312/blog/item/125a8405423d896d03088171.html] 设置好主目录之后,点击“Add”按钮可以把其余的目 ...

  3. Linux操作系统上用数据泵导库

    1.在Linux上 创建物理目录dp_dir,存放数据库.dmp文件: 用root用户登录,切换到oracle用户,用oralce身份创建物理目录如下: [root@server36 oracle]# ...

  4. Myeclipse8.5 svn插件安装两种方式

    第一种方式:(亲测成功)第一步:准备插件包:site-1.6.18.zip解压该包里面有features和plugins文件夹,删除该包里面的xml结尾的文件. 第二:我的Myeclipse8.5安装 ...

  5. C#获取汉字拼音

    C#获取汉字拼音 using System;  using System.Collections.Generic;  using System.Text;  using System.Text.Reg ...

  6. ASP.NET MVC之Html.RenderAction

    WEB窗体模式开发惯了,切入MVC模式,好多东西都不懂,每一步都要查资料. 初步得来的一些知识点体会是: _Layout.cshtml就相当于母版页 然后partical视图(部分视图)就是用户控件. ...

  7. j2ee的十三个规范

    转载 今天在做连接oracle数据库的时候,感受到了什么是规范.平时听到别人说学习j2ee一定要学习他的十三个规范,大概的知道每个规范是做什么的,每个“接口”是做什么的.          很早就听过 ...

  8. iOS事件机制(二)

    从上一篇的内容我们知道,在iOS中一个事件用一个UIEvent对象表示,UITouch用来表示一次对屏幕的操作动作,由多个UITouch对象构成了一个UIEvent对象.另外,UIResponder是 ...

  9. HDU 5778 abs (枚举)

    abs 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5778 Description Given a number x, ask positive ...

  10. 了解discuz!

    discuz!是什么 discuz!是由comsenz出品的,一款使用php编写,以MySQL作为数据存储的社区建站产品,是由戴志康大学时期创始开发,2001年6月发布,如今已被200万网站用做社区建 ...