IntelliJ运行Java项目出现JNI错误,已核对JDK版本仍未解决
解决JNI错误的具体步骤
- 检查IntelliJ的JDK配置
打开File → Project Structure → Project Settings → Project,确认Project SDK和Project language level与命令行java -version输出的版本完全一致;再切换到Modules选项卡,检查每个模块的Module SDK也匹配该版本。 - 清理并重建项目
执行Build → Clean Project清除旧编译文件,再执行Build → Rebuild Project重新编译整个项目,避免缓存文件导致的路径或版本冲突。 - 校验包结构与类声明的一致性
你的LinaerSearch.java位于linear_search目录下,类文件开头必须添加package linear_search;声明,否则编译后的字节码路径会与类加载路径不匹配,触发JNI错误。 - 检查运行配置的JRE设置
打开Run → Edit Configurations,找到对应main方法的运行配置,确认JRE选项选择的是与命令行一致的JDK版本,不要使用IDE默认的独立JRE。 - 排查32位/64位兼容性问题
你提到使用的是Eclipse x86(32位),如果当前安装的JDK是64位,会出现位数不兼容问题。请确认安装的JDK为32位版本,或者切换到64位的IDE版本。 - 重置IntelliJ的VM选项
打开Help → Edit Custom VM Options,检查是否存在手动设置的位数参数(比如-d32),如果有,删除或修改为匹配当前JDK位数的参数,保存后重启IntelliJ。
内容的提问来源于stack exchange,提问作者Iqtiza Khan
相关产品推荐
相关产品推荐

