今天在适配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
}
最新的版的butterknife9.0.0-rc2所有的工件都是用Java 8构建的,所以需要设置您的JDK用Java 8。
本文记录了解决Butterknife在适配AndroidX过程中遇到的错误,包括编译时找不到support包的问题及运行时报错的情况。通过更新Butterknife版本并调整JDK版本为Java8,最终成功解决了这些问题。


被折叠的 条评论
为什么被折叠?



