栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

运行java代码,报错 Error:A JNI error has occurred,please check your installation and try again

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

运行java代码,报错 Error:A JNI error has occurred,please check your installation and try again

报错信息

解决过程
  • 根据报错信息可以得知,报错的原因是由于编译这份java代码的版本和当前用于运行的java版本并不一致。并且编译的版本仅支持52.0或以上的运行版本。从而可以得知,当前用于运行的java版本低于52.0。

  • 而这里首先需要了解,什么是编译的版本,什么是运行的版本。也就是我们需要区分开jre和jdk。

    • 我们在安装java环境的时候,一个版本会分别对应两个文件夹,分别是jre和jdk。而jre表示的是java runtime environment ,即java的运行环境,而jdk表示的是Java SE Development kit(JDK),即java的编译环境。
    • 我们可以在cmd中分别查看这两个环境的版本是否一致(如下图):
    • java -version查看的是jre的版本(运行环境)。
    • javac -version查看的是jdk的版本(编译环境)。
    • 注意:如果你输入以上命令并不能成功查看版本,说明环境配置有问题,欢迎参考这里。
  • 回到正题,如果在查看版本后发现不一致,那么就去重新配置一下环境,保证版本一致后重新编译运行即可。

  • 需要说明的是,我这里这份代码并不是我编写的,并且也只拿到了编译完成后的class文件,因此只能通过解决更换运行的java版本解决这个问题。

  • 而从报错信息中可以知道,这份代码在编译后,仅支持用52.0及以上的java版本的jre环境运行,即使不知道52.0的版本对应的是哪个java版本,但肯定是需要高于1.8.0的。并且为了避免以后产生问题,我计划直接更新整个java的版本,即将jdk和jre换成一个新的版本,也考虑到以后可能还需要用到1.8.0的版本,因此并不会把1.8.0的版本删除。

解决方式
  • 首先下载1.9的java版本,即下载jdk9.0的安装包(jdk包包括jdk和jre, 9.0即1.9)。

  • 这里提供(windows-x64)的网盘链接
    提取码:63q0

  • 下载安装完成后,即可开始配置环境。为了方便管理,我将1.9放在和之前的1.8一个路径下。如下图:

  • 修改系统变量中原有的JAVA_HOME和JRE_HOME路径,使其指向新安装的1.9的java版本(如果配置环境的方式和我的不一样没关系,本质只是指向的路径发生了变化,建议采用我这种方式进行配置,方便管理,可以参考上面提供的配置链接。)。如下图


  • 再次检查jdk和jre的版本(记得确定后重新打开cmd)

  • 再次运行代码,运行成功

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/390314.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号