使用java命令出現Error: A JNI error has occurred, please check your installation and try again的錯誤

運行Java程序,javac運行.java文件沒有報錯,但java運行的時候報錯java

 

仔細看一下報錯node

Exception in thread "main" java.lang.UnsupportedClassVersionError: helloworld has been compiled by a more recent version of the Java Runtime (class file version 54.0), this version of the Java Runtime only recognizes class file versions up to 52.0bash

查一下緣由,發現爲java與javac版本不一致而形成的。less

java -version和javac - version一下,果然如此this

兩個版本不一致code

解決:blog

一、查詢Linux系統內有多少java版本io

rpm -qa |grep java

 

 

 

 

2.而後一個個刪除乾淨class

rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.181-3.b13.el7_5.x86_64
rpm -e --nodeps java-1.7.0-openjdk-1.7.0.171-2.6.13.0.el7_4.x86_64
rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.171-2.6.13.0.el7_4.x86_64
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.181-3.b13.el7_5.x86_64 
(輸入rpm -e --nodeps +「存在的java版本」)有多少刪除多少

三、檢驗原有的java版本是否所有移除thread

[root@yuan 8-1]# java - version
-bash: /usr/bin/java: No such file or directory

四、原有的版本移除後配置新安裝的java環境變量

vi /etc/profile

編輯profile文件,在最後加上

JAVA_HOME=/usr/local/java/jdk-10.0.2/   ###(「jdk-10.0.2」改成你要安裝的java版本的安裝文件名)
JRE_HOME=$JAVA_HOME/           ###(因爲jdk10解壓縮後沒有jre文件夾,若是爲jdk10如下的版本應
                               爲「JRE_HOME=$JAVA_HOME/jre」)
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
export JAVA_HOME JRE_HOME PATH CLASSPATH

五、最後更新一下

source /etc/profile

完成

相關文章
相關標籤/搜索