java.lang.UnsupportedClassVersionError::Class文件编译的版本错误
2017-12-12 19:46
519 查看
有时,从SVN下检出新项目后,在TOMCAT上跑报错:
Caused by: java.lang.UnsupportedClassVersionError: javafx/application/Application : Unsupported major.minor version 52.0
起初想的是原因是jdk版本不一致导致的,就先顺藤摸瓜找下去:一般查的流程如下
第一步,首先是检查本机当前的jdk version。在cmd里java -version查看当前版本号。
先查了报错maven项目的pom.xml文件中的jdk环境要求,确定一致后往后走
第二步,检查当前项目的Jave Compiler是否与本机jdk版本吻合。
第三步,切换过java Compiler和java build path并且apply后,最好把之前部署在Tomcat上编译出项目的class文件删了,然后重新部署一次。避免Eclipse直接运行以前编译过的class文件。然后继续报UnsupportedClassVersionError;
(ps.有时候eclipse也会抽风,编译不出来,可以重启下eclipse试下 :)
这个报错有可参考以下文章:
http://blog.csdn.net/pipisorry/article/details/42965435
然而,检查与调整上面依旧报错。。。于是开始怀疑eclipse本身编译有问题,接着想法是用maven直接编译检查:
用脚本命令,清除项目,由于是maven项目,需安装依赖,安装到指定目录;
call mvn clean install dependency:copy-dependencies -DoutputDirectory=target/lib -DskipTests
配置下maven_opts,用tomcat7运行;
maven命令可参考下:
https://www.cnblogs.com/adolfmc/archive/2012/07/31/2616908.html
最后,想到的是:因为之前是安装过jdk1.8的版本,后来的1.7版本是直接覆盖安装,就联想了下可能有1.8版本的残留的jdk文件影响了JVM的编译?
继续折腾。。
将电脑里的java环境完全卸载,删了jdk的文件,删相关的注册表;重新下载了个新的1.7jdk,安装后竟然就好了(泪奔)。----------记录一次无语的报错 :)
Caused by: java.lang.UnsupportedClassVersionError: javafx/application/Application : Unsupported major.minor version 52.0
起初想的是原因是jdk版本不一致导致的,就先顺藤摸瓜找下去:一般查的流程如下
第一步,首先是检查本机当前的jdk version。在cmd里java -version查看当前版本号。
先查了报错maven项目的pom.xml文件中的jdk环境要求,确定一致后往后走
第二步,检查当前项目的Jave Compiler是否与本机jdk版本吻合。
第三步,切换过java Compiler和java build path并且apply后,最好把之前部署在Tomcat上编译出项目的class文件删了,然后重新部署一次。避免Eclipse直接运行以前编译过的class文件。然后继续报UnsupportedClassVersionError;
(ps.有时候eclipse也会抽风,编译不出来,可以重启下eclipse试下 :)
这个报错有可参考以下文章:
http://blog.csdn.net/pipisorry/article/details/42965435
然而,检查与调整上面依旧报错。。。于是开始怀疑eclipse本身编译有问题,接着想法是用maven直接编译检查:
用脚本命令,清除项目,由于是maven项目,需安装依赖,安装到指定目录;
call mvn clean install dependency:copy-dependencies -DoutputDirectory=target/lib -DskipTests
配置下maven_opts,用tomcat7运行;
set MAVEN_OPTS=%MAVEN_OPTS% -Xms256m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=256m call mvn tomcat7:run运行后,和之前一样的报错。无语。。
maven命令可参考下:
https://www.cnblogs.com/adolfmc/archive/2012/07/31/2616908.html
最后,想到的是:因为之前是安装过jdk1.8的版本,后来的1.7版本是直接覆盖安装,就联想了下可能有1.8版本的残留的jdk文件影响了JVM的编译?
继续折腾。。
将电脑里的java环境完全卸载,删了jdk的文件,删相关的注册表;重新下载了个新的1.7jdk,安装后竟然就好了(泪奔)。----------记录一次无语的报错 :)
相关文章推荐
- 问题007:JDK版本与JRE版本不同导致java.exe执行类文件错误 java.lang.UnsupportedClassVersionError错误
- Java 编译,运行错误之 java.lang.UnsupportedClassVersionError: Bad version n umber in .class file
- java编译错误Exception in thread “main" java.lang.UnsupportedClassVersionError
- java.lang.UnsupportedClassVersionError jar版本不一致错误
- java.lang.UnsupportedClassVersionError - JDK 版本错误
- java.lang.UnsupportedClassVersionError 版本不一致错误
- Java 编译,运行错误之 java.lang.UnsupportedClassVersionError: Bad version n umber in .class file
- 问题版本关于运行错误:java.lang.UnsupportedClassVersionError: Bad version number in .class file
- 出现java.lang.UnsupportedClassVersionError 错误的原因
- 在eclipse中解决java.lang.UnsupportedClassVersionError 错误
- 在eclipse中解决java.lang.UnsupportedClassVersionError 错误
- 测试 今天在导入一个工程时,编译并打包到Tomcat后,发现出现java.lang.UnsupportedClassVersionError: Bad version number in .class
- Could not find the main class.program will exit和java.lang.UnsupportedClassVersionError 错误的解决办法
- tomcat 启动错误 java.lang.UnsupportedClassVersionError: Bad version number in .class file
- JAVA错误:java.lang.UnsupportedClassVersionError: Bad version number in .class file
- JDK版本问题Exception in thread "main" java.lang.UnsupportedClassVersionError: Hello
- java.lang.UnsupportedClassVersionError: Unsupported major.minor version 51.0的错误
- JDK版本问题Exception in thread "main" java.lang.UnsupportedClassVersionError:
- 出现java.lang.UnsupportedClassVersionError 错误的原因
- [小插曲]JDK版本不一致导致的异常 java.lang.UnsupportedClassVersionError: Bad version number in .class file