使用以下应用程序的build.gradle config:
,Gradle构建失败android{
compileSdkVersion 26
buildToolsVersion "26.0.2"
defaultConfig {
applicationId "com.sample.demo"
minSdkVersion 21
targetSdkVersion 26
versionCode 1
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
externalNativeBuild {
cmake {
cppFlags "-std=c++11 -frtti -fexceptions"
// abiFilters 'x86', 'x86_64', 'armeabi', 'armeabi-v7a', 'arm64-v8a', 'mips', 'mips64'
abiFilters 'armeabi-v7a'
}
}
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
externalNativeBuild {
cmake {
path "CMakeLists.txt"
}
}
sourceSets {
main {
jniLibs.srcDirs = ['src/main/jniLibs']
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
以下是相同的错误日志:
:app:transformClassesWithDesugarForDebug
Exception in thread "main" java.lang.IllegalArgumentException
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at org.objectweb.asm.ClassReader.<init>(Unknown Source)
at com.google.devtools.build.android.desugar.CoreLibraryRewriter.reader(CoreLibraryRewriter.java:44)
at com.google.devtools.build.android.desugar.Desugar.desugarClassesInInput(Desugar.java:388)
at com.google.devtools.build.android.desugar.Desugar.desugarOneInput(Desugar.java:326)
at com.google.devtools.build.android.desugar.Desugar.desugar(Desugar.java:280)
at com.google.devtools.build.android.desugar.Desugar.main(Desugar.java:584)
我尝试了大多数其他解决方案,如:
总之,这些是关于SO的这个例外的流行答案,但它们都没有对我有用。我本可以使用stacktrace发布完整的日志,但SO认为它的代码多于细节,因此不允许我这样做。虽然让我知道是否需要其他任何东西,我会做出其他安排。
答案 0 :(得分:1)
org.objectweb.asm.ClassReader
的构造函数抛出IllegalArgumentException
的唯一位置是类文件版本检查。
所以,