java编译中出现了Exception in thread “main" java.lang.UnsupportedClassVersionError
Posted Coder-Wf
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java编译中出现了Exception in thread “main" java.lang.UnsupportedClassVersionError相关的知识,希望对你有一定的参考价值。
这个问题确实是由较高版本的JDK编译的java class文件试图在较低版本的JVM上运行产生的错误。
1、解决措施就是保证jvm(java命令)和jdk(javac命令)版本一致。如果是linux版本,则在命令行中分别输入java -version和javac -version命令来查看版本是否一致。这里假设都是1.7版本。
2、如果都一致,但还是解决不了问题,那么你肯定不是直接在命令行中用javac来编译的,而是用类似于eclipse、netbeans这样的编译器来编译的。因为很多编译器都自带javac,而不是采用操作系统中的编译器。如果你的编译器是eclipse的话,那么需要在项目的属性里设置jdk版本,方法是右击项目-->properties-->java compiler --> Enable project specific settings -->将compiler compliance level设置为1.7,也就是与jvm一致的版本(在命令行中java -version所显示的版本)。
综上,如果你是用编译器来编译的话,请首先确保编译器自带的jdk版本是否和操作系统中的java版本一致。
见下图:
以上是关于java编译中出现了Exception in thread “main" java.lang.UnsupportedClassVersionError的主要内容,如果未能解决你的问题,请参考以下文章
为啥出现Exception in thread "main"
Exception in thread "main" java.lang.NoClassDefFoundError
JNI中使用mingw 生成dll。但java调用中出现错误 Exception in thread "main" java.lang.UnsatisfiedLinkEr
Java编译报错:Exception in thread “main“ java.util.NoSuchElementException(剖析原因理解及解决方法)
Spark的WordCount操作过程中出现Exception in thread “main“ java.lang.ArrayIndexOutOfBoundsException: 10582问题