不支持的major.minor版本要更改哪一个?

时间:2012-12-31 19:38:23

标签: tomcat servlets version java

我用JDK 7编译了一个servlet。 我使用Tomcat作为servlet容器。但它使用旧版JVM 1.6

现在我的错误为Unsupported major.minor version

我必须改变哪一个?

  • Tomcat的JVM

OR

  • 我的mac的JDK?如何仅使用一个文件的cmd-line进行编译来更改JDK?

4 个答案:

答案 0 :(得分:2)

要在其下运行的Tomcat的Java版本应该是该版本的Tomcat支持的版本。检查上面的文档,或者只使用您正在使用的文档。

您用于编译的版本应该是相同的版本,至少应该是相同的major.minor数字。

您真的应该使用相同的版本来运行Tomcat以及所有开发和测试以及构建和单元测试运行等。它让一切变得更轻松,摆脱了浪费时间的微妙错误。

答案 1 :(得分:1)

这两种方法中的任何一种都可行。更改tomcat JAVA_HOME很简单,因为它不需要你的代码重新编译(假设你的Tomcat与Java 6兼容)。

您可以简单地将tomcat .bat文件中的JAVA_HOM E指向计算机上的Java 6位置。

答案 2 :(得分:0)

使用Java 1.6重新编译,问题应该消失。

答案 3 :(得分:0)

在这两个选项中,可能更容易降级运行Tomcat的JVM(或者选择不同的JVM,因为Mac OS允许多个并行的JVM安装)。

另一种选择是使用“-target 1.6”重新编译代码,这将编译可由Java 1.6虚拟机运行的.class文件。这是一个更好的IMO解决方案,因为后来的构建也可以接受1.6 JVM。