Java转Kotlin调用JNI方法异常

一、背景

Java调用JNI方法时没有任何问题,但是使用Java转Kotlin以后出现了崩溃异常:A java_vm_ext.cc:597] JNI DETECTED ERROR IN APPLICATION: jclass has wrong type:

校验参数后没有任何变化,经过分析验证找到解决方案

二、原因分析

当我们使用Android Studio默认转换一个Java调用JNI的类时,我们可以使用Tools-> Kotin

->Show Kolin Bytecode 再点击Decompile来查看转换Kotlin后与我们原有Java文件有和不同

二、解决方案

经过上述方案对比发现原来Java中的方法的static关键字被移除了,因此在方法名上增加@JvmStatic即可解决上述异常

Kotlin 复制代码
@JvmStatic
external fun stop()
相关推荐
红牛2030几秒前
Nexus Repository搭建maven远程仓库
java·maven·nexus
又是忙碌的一天2 分钟前
Maven基本概念
java·maven
@淡 定9 分钟前
JVM内存区域划分详解
java·jvm·算法
❀͜͡傀儡师14 分钟前
运维问题排查笔记:磁盘、Java进程与SQL执行流程
java·运维·笔记
篱笆院的狗14 分钟前
Java 中如何创建多线程?
java·开发语言
默 语15 分钟前
RAG实战:用Java+向量数据库打造智能问答系统
java·开发语言·数据库
晨晖217 分钟前
二叉树遍历,先中后序遍历,c++版
开发语言·c++
醒过来摸鱼17 分钟前
Java Compiler API使用
java·开发语言·python
wangchen_021 分钟前
C/C++时间操作(ctime、chrono)
开发语言·c++
dazhong201223 分钟前
Mybatis 敏感数据加解密插件完整实现方案
java·数据库·mybatis