我遇到了以下问题:
我想在 Apache Tomcat 7.0.54 上使用基于目标 Java-8 构建的 Java Servlet。
当我在我的本地机器(Win-64,jdk build 1.8.0-b132)上运行它时,它运行完美。
但是当我将它部署到生产环境时(Debian GNU/Linux 7.5 (wheezy), jdk build 1.8.0-b132, Tomcat 7.0.54-2)它抛出:
Unsupported major.minor version 52.0 (unable to load class ru.tomtrix.fvds.servlets.ItemServlet)
... 这意味着不受支持的 Java-8 类。 那么 相同 版本的 Tomcat 的 Windows 和 Linux 实例出了什么问题?
最佳答案
谢谢大家,我找到怎么回事了。事实证明 JAVA_HOME 没有以正确的方式定义(如注销和 Marko Topolnik 提到的)。我打开了 /etc/default/tomcat7 并更改了这一部分:
# The home directory of the Java development kit (JDK). You need at least
# JDK version 6. If JAVA_HOME is not set, some common directories for
# OpenJDK, the Oracle JDK, and various Java SE 6+ versions are tried.
#JAVA_HOME=/usr/lib/jvm/openjdk-6-jdk
JAVA_HOME=/path/to/my/jdk
...一切都开始工作了! Tomcat 真的默认使用像 OpenJDK 这样的内部 JDK smth 吗?
关于linux - Windows 和 Linux 上带有 Java 8 的 Tomcat 7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24504211/