You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Kotlin构建AAR库:启动时出现ClassNotFoundException问题

解决Kotlin开发的AAR库引入Java项目后启动崩溃问题

咱一眼就看出来问题出在哪了——你用Kotlin写的库依赖了Kotlin标准库,但你的Java项目压根没把这个依赖带上,系统找不到kotlin.jvm.internal.Intrinsics类才直接崩了。别着急,给你两个靠谱的解决办法:

方案1:让Kotlin库的依赖自动传递(优先推荐)

打开你开发Kotlin库时的Module级build.gradle文件,把Kotlin标准库的依赖从implementation改成api:

dependencies {
    // 记得替换成你实际使用的Kotlin版本,比如1.8.20
    api "org.jetbrains.kotlin:kotlin-stdlib:1.8.20"
}

这样一来,当Java项目引入你的AAR时,Gradle会自动把Kotlin标准库作为传递依赖拉取进来,不用在Java项目里额外做配置,省心又不容易出错。

方案2:在Java项目中手动添加Kotlin标准库依赖

如果不想修改Kotlin库的配置,直接在Java项目的Module级build.gradle里加一行依赖:

dependencies {
    // 版本号必须和你Kotlin库使用的版本保持一致,不然容易出现版本冲突
    implementation "org.jetbrains.kotlin:kotlin-stdlib:1.8.20"
}

添加完后同步一下Gradle,重新编译运行应该就能正常启动了。

为啥会出现这个报错?

给你简单解释下:Kotlin编译器会自动在生成的字节码里插入对Intrinsics类的调用(比如做参数非空校验、类型检查这些),而这个类是Kotlin标准库的核心类。你的Java项目默认不会引入Kotlin标准库,所以运行时找不到这个类,就直接抛出NoClassDefFoundError崩溃了。

内容的提问来源于stack exchange,提问作者BArtWell

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:29:43