[英]How to add new sourceset with gradle kotlin-dsl
我想添加一个源集src/gen/java
。 使用 groovy 这相当容易,并且已经在https://discuss.gradle.org/t/how-to-use-gradle-with-generated-sources/9中描述
sourceSets {
gen {
java.srcDir "src/gen/java"
}
}
但我坚持使用 kotlin-dsl 添加一个新的。 我所拥有的是:
java {
sourceSets {
}
}
任何人都可以在这里帮助
@ s1m0nw1的答案是正确的,以添加新的源集。 但是只要在现有的源集中添加一个新的源文件夹,就可以使用:
java.sourceSets["main"].java {
srcDir("src/gen/java")
}
您应该尝试以下方法:
java.sourceSets.create("src/gen/java")
希望这就是您所需要的!
kotlin-dsl
sourceSets {
this.getByName("androidTest"){
//Adds the given source directory to this set.
this.java.srcDir("src/mock/java")
}
this.getByName("test"){
this.java.srcDir("src/mock/java")
}
}
我想添加一个名称为“ test-integration”和源目录src/test-integration/kotlin
的源src/test-integration/kotlin
。 通过结合两个先前存在的答案,我得以实现:
java.sourceSets.create("test-integration").java {
srcDir("src/test-integration/kotlin")
}
在Gradle 4.10.2上为我工作:
sourceSets.create("integrationTest") {
java.srcDir("src/integrationTest/java")
java.srcDir("build/generated/source/apt/integrationTest")
resources.srcDir("src/integrationTest/resources")
}
在Gradle 4.10.2上为我工作:
sourceSets.getByName("main") {
java.srcDir("src/main/java")
java.srcDir("src/main/kotlin")
}
sourceSets.getByName("test") {
java.srcDir("src/test/java")
java.srcDir("src/test/kotlin")
}
上面的代码也可以在subprojects
块中使用。
这是我之前的情况:
main.kotlin.srcDirs = main.java.srcDirs = ['src']
test.kotlin.srcDirs = test.java.srcDirs = ['test']
main.resources.srcDirs = ['resources']
test.resources.srcDirs = ['testresources']
以上现在翻译为:
sourceSets {
main {
java {
srcDirs("src")
}
resources {
srcDirs("resources")
}
}
test {
java {
srcDirs("test")
}
resources {
srcDirs("testresources")
}
}}
从 Gradle 7.5 开始:
sourceSets {
main {
java.sourceSets {
create("gen"){
java.srcDir("src/gen/java")
}
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.