我有一个项目,有多个构建类型和源代码(公共和内部)的一些共享包,这允许我们为不同的商店和内部构建不同的代码启用发布。我的gradle脚本类似于下面的脚本,您会注意到它有用于构建类型的源集和一个用于公共或内部的额外包。
android {
signingConfigs {
config {
...
}
debug {
...
}
}
configurations {
...
}
compileSdkVersion 27
buildToolsVersion '27.0.3'
defaultConfig {
...
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
useLibrary 'org.apache.http.legacy'
buildTypes {
release {
...
}
debug {
...
}
tester.initWith(release)
tester {
...
}
lintOptions {
warningsAsErrors false
abortOnError gradle.startParameter.taskNames.contains("assembleRelease")
warning 'MissingTranslation'
}
}
sourceSets {
release {
java.srcDirs = ['src/release/java', 'src/public/java']
res.srcDirs = ['src/release/res', 'src/public/res']
}
debug {
java.srcDirs = ['src/debug/java', 'src/internal/java']
res.srcDirs = ['src/debug/res', 'src/internal/res']
}
tester {
java.srcDirs = ['src/tester/java', 'src/internal/java']
res.srcDirs = ['src/tester/res', 'src/internal/res']
}
}
packagingOptions {
...
}
dexOptions {
...
}
testOptions {
unitTests {
...
}
}
}
问题是,当我运行./gradlew :module:compileLintOptionsJavaWithJavac
时,对公共或内部目录中的每个类使用cannot find symbol
都会失败。
https://stackoverflow.com/questions/51976121
复制相似问题