linux - Windows 和 Linux 上带有 Java 8 的 Tomcat 7

标签 linux tomcat java-8

我遇到了以下问题:

我想在 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/

相关文章:

java - 将 Java Stream 过滤为 1 个且仅 1 个元素

c - 32 位应用程序如何在 64 位 Linux 上进行系统调用?

linux - Bash 并行 dd 和 mkfs

java - 如何调用权威服务器获取 ip 响应?

java - session 终止后无法将 JDBC 与 Oracle 重新连接

java - jsp显示图片出错

c++ - gdb 交互式控制台 : looking available listings for shared libraries

java - REST JAX-RS 日志记录

java - 多个平台,一个 JDK 安装

java-8 - 如何将未捕获的异常处理程序/完成附加到 CompletableFuture 链