我在我的项目中使用org.jetbrains.kotlin:kotlin-reflect库(包含在gradle依赖项中)。
该应用程序一直没有任何问题但是在将android gradle插件升级到最新版本3.1.0之后,应用程序开始在一台设备上崩溃(Nexus 5,Android 4.4.3)。 日志如下:
E / AndroidRuntime:致命异常: kotlin.jvm.KotlinReflectionNotSupportedError:在运行时找不到Kotlin反射实现。确保在类路径中有kotlin-reflect.jar at kotlin.jvm.internal.ClassReference.error(ClassReference.kt:86) at kotlin.jvm.internal.ClassReference.getSimpleName(ClassReference.kt:23)
我认为这不是预期的行为,但也许有人找到了解决方法/解决方案?
现在我被迫将android gradle插件降级到3.0.1,以防止应用崩溃。
====================
我尝试重新创建导致崩溃的环境,但是我没有设法重现崩溃。 因为这只发生在较旧的Android版本(pre-L)上,并且在升级引入一些dex优化的android gradle插件之后,我的猜测是它在某种程度上相关。
====================
对于将此问题标记为重复的人 :
我不确定是否可以更清楚:其他票证是否缺少依赖性。我在build.gradle中有kotlin反映依赖。此外,我的应用程序可以在更高的Android版本上运行以及将android gradle插件降级到3.0.1之后。 如果缺少依赖项,则无法使用任何版本的android gradle插件。因此,其他问题的答案对此无效。
答案 0 :(得分:4)
向gradle.properties
添加行可解决问题:
android.enableD8MainDexList=false
此外,插件版本3.2.0-alpha11
来源: