Idea报错: A JNI error has occurred

Idea报错环境异常

具体报错

Error: A JNI error has occurred, please check your installation and try again

原因

一般情况

报错如上一般情况是因为本地java编译和java运行版本不一致导致的。所以需要在Idea中设置为一样的。设置如下图:【这里以jdk 1.8 为例】
01)点击FIle --> Project Structure
02)设置Project 中SDK的版本一致
在这里插入图片描述
03)Modules中 修改SourcesDependencies 中版本一致
在这里插入图片描述
在这里插入图片描述
04)SDKs设置版本一致
在这里插入图片描述
05)如有其他SDK,设置Global Libraries 保持全局一致【并不是和JDK一致,而是和该SDK的其他版本一致】
在这里插入图片描述

06)点击Preferences 下的 该位置:设置版本一致
在这里插入图片描述
在这里插入图片描述
07)最后确认pom文件中是否有显式声明java编译版本等限制字符,如有,可以去掉。然后生效POM文件【有的可以自动生效,有的需要手动生效】

到这里基本一般情况就可以解决并运行了。

其他情况

有时候并不是版本不一致会导致该问题产生,有时候可能因为jar包或者类方法异常。如:

Exception in thread “main” java.lang.NoClassDefFoundError: org/apache/spark/SparkContext

这个错误等也会导致A JNI error has occurred

01)确认该类【类所在jar】是否成功导入,如果没导入,pom中记得导入一下
02)导入有包,但是执行报错类异常,确认下是否pom文件中scope属性是否设置了provided,如果有去掉就可以了【本地可以去掉,打包的时候,如果环境中有该jar,那么打包的时候还需继续加上】
在这里插入图片描述
03)如果不喜欢来回改动pom文件,那么可以在如下位置,添加这个包,这样pom文件既可以保持原样,也可以在本地运行。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_41998764/article/details/121809368