Ant 和 Maven構建工具都是用xml來描述任務結構的,總體而言打包項目等任務都可以,但畢竟xml的靈活性稍微差些,
新的企業構建工具Gradle就類似於linux上的shell腳本,採用Groovy動態語言編寫腳本。
版本:2.2的Gradle
// date 20141220
apply plugin : 'java'
version='0.1'
archivesBaseName="myfirstpj" //不寫的話 就是項目名稱+版本號
repositories {
mavenCentral()
}
sourceSets {
main {
java {
srcDirs=['src']
}
}
}
dependencies {
compile fileTree(dir:'lib',include:'*.jar')
}
//依賴編譯,然後打包JAR
task taskJar(type:Jar, dependsOn: compileJava) {
from 'build/classes'
destinationDir = file('build/libs')
}
//清除上次的編譯過的文件
task clearPj(type:Delete){
delete 'build','target'
}
//把JAR複製到目標目錄
task release(type: Copy,dependsOn: [clearPj,taskJar]) {
from('build/libs') {
include '*.jar'
}
into ('target')
}
執行 gradle release 即可
確實很好用,
命令和任務屬性可參考文檔DSL http://www.gradle.org/docs/current/dsl/