標籤:src blog ted res reflect logs ati junit 自動
一、目錄結構
二、build.gradle配置
group ‘yjmyzz‘
version ‘1.0-SNAPSHOT‘
apply plugin: ‘java‘
apply plugin: ‘scala‘
apply plugin: ‘application‘ //可選(可自動產生shell啟動指令碼)
mainClassName = ‘AppDemo‘ //可選(與上行的application外掛程式配套出現)
//這裡是關鍵(把java與scala的原始碼目錄全映射到scala上,
// 這樣gradle compileScala時就能同時編譯java與scala的原始碼)
sourceSets {
main {
scala {
srcDirs = [‘src/main/scala‘, ‘src/main/java‘]
}
java {
srcDirs = []
}
}
test {
scala {
srcDirs = [‘src/test/scala‘, ‘src/test/java‘]
}
java {
srcDirs = []
}
}
}
//可選(項目初始化時,可用gradle cDirs產生scala及java的src目錄)
task "createDirs" << {
sourceSets*.scala.srcDirs*.each { it.mkdirs() }
sourceSets*.java.srcDirs*.each { it.mkdirs() }
sourceSets*.resources.srcDirs*.each { it.mkdirs() }
}
repositories {
mavenLocal()
maven { url ‘http://maven.aliyun.com/nexus/content/repositories/central/‘ }
mavenCentral()
}
dependencies {
compile "org.scala-lang:scala-library:2.11.7"
compile "org.scala-lang:scala-compiler:2.11.7"
compile "org.scala-lang:scala-reflect:2.11.7"
testCompile "junit:junit:4.11"
}
//可選,如果想讓產生的jar可直接運行,建議加上
jar {
manifest {
attributes ‘Main-Class‘: ‘AppDemo‘
}
}
這樣就可以了:
建立初始目錄:gradle cDirs (註:這是縮寫方式,與gradle createDirs完全相同)
編譯: gradle compileScala
產生jar包: gradle jar
產生帶啟動指令碼的可運行包: gradle installDist
gradle項目中如何支援java與scala混合使用?