首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JDK版本错误

JDK版本错误
EN

Stack Overflow用户
提问于 2017-05-03 02:55:02
回答 1查看 514关注 0票数 0

所有人!

我有一个带有jar库的java程序,它可以在以下JDK版本上运行:

代码语言:javascript
复制
java -version
java version "1.8.0_102"
Java(TM) SE Runtime Environment (build 1.8.0_102-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.102-b14, mixed mode)

我需要让它在运行以下JDK版本的超级计算机上编译:

代码语言:javascript
复制
java -version
java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode)

如您所见,它们都具有相同的JDK,即JDK 8。但是,在使用以下命令进行编译时:

代码语言:javascript
复制
javac myFile.java 

出现以下错误:

代码语言:javascript
复制
class file has wrong version 51.0, should be 48.0

看起来编译是在另一个JDK (而不是8)上完成的。有人能帮我解决这个问题吗?

致以最亲切的问候!

EN

回答 1

Stack Overflow用户

发布于 2017-10-11 23:46:39

发生java.lang.UnsupportedClassVersionError是因为在编译时使用较高的JDK,而在运行时使用较低的JDK。

代码语言:javascript
复制
J2SE 8=52,
J2SE 7=51,
J2SE 6.0=50,
J2SE 5.0=49,
JDK 1.4=48,
JDK 1.3=47,
JDK 1.2=46,
JDK 1.1=45

Java第一条规则:本地pc和服务器上的版本必须相同。否则,可能会出现这种不必要的问题。

要了解更多信息,您可以查看

java --版本

javac --版本

这将使jdk和jre版本不匹配的问题得到澄清。如果显示各种版本,则卸载其他版本,然后构建您的项目并在服务器上部署。

另一个与您的问题类似的答案在这里:Cannot compile Java code - "class file has wrong version 52.0, should be 48.0"

资源链接:

Exception in thread “main” java.lang.UnsupportedClassVersionError: com/crunchify/Main : Unsupported major.minor version 51.0

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43745252

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档