在Gradle 6.1.1上,如何为android项目添加sourceSet?
其他问题的答案不再有效,getByName("name")
用SourceSet with name 'main' not found.
返回错误
官方文件称使用
sourceSets {
main {
java {
srcDir("thirdParty/src/main/java")
}
}
}
然而,有20多个主管道必须进口,我不确定哪一个是正确的。
我使用的是gradle 6.5.1,但文档建议,这也应该适用于您,请尝试:
sourceSets {
named("main") {
java.srcDir("../buildSrc/src/main/java")
}
}
它也适用于构建类型(调试/发布(、口味等。
原因是groovy可以以某种方式解释自己并知道main
等,但在gradle kts上,您可以根据需要使用named
或getByName
、create
等来调用它。
类似的情况是,对于groovy中的implement
和api
,您只能使用implementationDebug
将其附加到调试版本,但在kotlin-dsl中,您必须将其称为字符串"implementationDebug"
,因为没有这样的函数
-----PS-----
如果named
、getByName
不适合您,请尝试使用findByName
和create