[Groovy]用Groovy写Ant构建
用Ant做Java构建很方便,配置build.xml,build.properties就可以了。但是有些时候我们不得不重复的复制build.xml,不停的在不同的模块中间复制他们。懒人总会有新的办法,Groovy能够让你更懒。闲话不表,直接看一个简单的脚本吧。
class Build{
def project = 'test'
def dist_dir = 'bin'
def lib_dir = 'lib'
def src_dir = 'src'
def file_name = 'test'
def build_dir = 'classes'
def lib_nodeploy = 'lib-nodeploy'
def ant = new AntBuilder()
def build(){
ant.echo("build $project")
ant.mkdir(dir:"$build_dir")
def classpath = ant.path {
fileset(dir: "${lib_dir}"){
include(name: "**/*.jar")
}
fileset(dir: "${lib_nodeploy}"){
include(name: "**/*.jar")
}
}
ant.javac(srcdir:"${src_dir}",destdir:"${build_dir}",includes:'**/*.*',fork:'true',encoding:'UTF-8',classpath: "${classpath}")
return this;
}
def jar() {
ant.mkdir(dir: "${dist_dir}")
ant.jar(destfile: "${dist_dir}/${file_name}.jar", basedir: "${build_dir}")
return this;
}
}
new Build().build().jar()