運行Java程序,javac運行.java文件沒有報錯,但java運行的時候報錯
仔細看一下報錯
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.0
查一下原因,發現為java與javac版本不一致而造成的。
java -version和javac - version一下,果真如此
兩個版本不一致
解決:
1、查詢Linux系統內有多少java版本
rpm -qa |grep java
2.然后一個個刪除干凈
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版本”)有多少刪除多少
3、檢驗原有的java版本是否全部移除
[root@yuan 8-1]# java - version -bash: /usr/bin/java: No such file or directory
4、原有的版本移除后配置新安裝的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
5、最后更新一下
source /etc/profile
完成
搬遷自我的CSDN博客:https://blog.csdn.net/kingyuan666