build.gradle 获取 git 版本号 获取当前时间 自定义jar的名字
以前这个gradle都是给Android使用的,万万没想到,Java的其它项目也能使用,甚至能替代maven或者说maven和gradle项目是可以互相转换的。还有就是在使用svn来管理项目的时候,每个svn版本都对应一个数字,但是换了git之后,每个提交记录就不是简单的生成个int数字,还是递增的数字了,对应的是个hash值,类似Java对象的hashcode,这个时候就希望,每次项目打包之后,产生出来的jar包带上这个git版本号,虽然不似svn那样一个简单的int数字就能说明版本,但是git的hash值还是可以凑合用的,也能对应找到提交版本记录。 首先在最外层的根 build.gradle文件里面定义几个全局的方法,子模块项目就可以直接使用,而不用再复制一次。 static def gitHashAndBuildTime() { return "-" + getGitSHA() + "-" + releaseTime() } static def releaseTime() { return new Date().format("yyyy-MM-dd HH:mm", TimeZone.getTimeZone("GMT+08:00")) } static def getGitSHA() { return 'git rev-parse --short HEAD'.execute(