Gradle 使用以下 build.gradle 文件编译良好:
apply plugin: 'com.android.library'
android {
compileSdkVersion 21
buildToolsVersion "22.0.1"
defaultConfig {
minSdkVersion 8
targetSdkVersion 16
versionCode 1
versionName "1.0"
}
sourceSets {
debug {
jniLibs.srcDirs = ['src/main/jniLibs-dbg']
res.srcDirs = ['src/main/res-dbg', 'src/main/res-common']
}
release {
jniLibs.srcDirs = ['src/main/jniLibs-rel']
res.srcDirs = ['src/main/res-rel', 'src/main/res-common']
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
lintOptions {
abortOnError false
}
}
dependencies {
compile 'com.android.support:support-v4:23.0.0'
debugCompile files('libs/debug.jar')
releaseCompile files('libs/nonDebug.jar')
}
但是,当我添加 productFlavors 时,编译失败:
productFlavors {
flavor1{
}
flavor2{
}
}
味道是故意空的。我只是想看看是否编译成功。稍后我将添加每种口味的资源。 控制台日志表明 assembleDebug 任务失败,因为它找不到 debug.jar 中的类文件
这是我看到的错误:
出了什么问题:
Execution failed for task ':app:compileDebugJava'.
> Compilation failed; see the compiler error output for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
有什么想法吗?
最佳答案
你的 Logcat 扔了什么
Note: Some input files use or override a deprecated API.
首先升级你的buildToolsVersion & compileSdkVersion。
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
minSdkVersion 8
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
您可以更改您的 minSdkVersion 8
级别,使用 15
并设置 targetSdkVersion 23
。
再次为
Note: Recompile with -Xlint:deprecation for details. Note: Some input files use unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details.
您可以访问这里
Failure on build with Gradle on command line with an android studio project : Xlint error
关于android - 在 Gradle (Android) 中添加 productFlavor 导致编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33731437/