今天在适配androidX的时候,发现在使用了butterknife
的activity和fragment的类在运行的时候报错了,编译时不会报错,提示找不到support
包。
马上想到androidx里没有support了,于是去butterknife官网导入了最新的
implementation 'com.jakewharton:butterknife:10.1.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:10.1.0'
运行时报错
Error: Static interface methods are only supported starting with Android N (--min-api 24): void butterknife.Unbinder.lambda$static$0()
在butterknife的issues看到解决办法:
//在app.build中加入
//指定jdk版本
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
最新的版的butterknife
9.0.0-rc2所有的工件都是用Java 8构建的,所以需要设置您的JDK用Java 8。