Tomcat 7 是否支持 Java 8?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/34388165/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Does Tomcat 7 support Java 8?
提问by mkczyk
In offcial page of Tomcatit says that Tomcat 7 supports Java 8. If I download this and run with Java 8 it works.
在Tomcat 的官方页面中,它说 Tomcat 7 支持 Java 8。如果我下载它并使用 Java 8 运行它就可以了。
But, on Openshift is Tomcat 7 (JBoss EWS 2.0). In this webpageit says that EWS 2.0 doesn't support Java 8. If I deploy my Java 8 application to Openshift (Tomcat 7) it isn't working.
但是,在 Openshift 上是Tomcat 7 (JBoss EWS 2.0)。在这个网页中,它说 EWS 2.0不支持 Java 8。如果我将 Java 8 应用程序部署到 Openshift (Tomcat 7),它就无法工作。
Why?
为什么?
I tried to install Java 8 on Tomcat 7 on Openshift with this: https://stackoverflow.com/a/23895161/2442133But it isnt' working for me. I have error:
我尝试在 Openshift 上的 Tomcat 7 上安装 Java 8:https://stackoverflow.com/a/23895161/2442133 但它对我不起作用。我有错误:
org.springframework.beans.factory.BeanCreationException: Error creating bean
with name 'org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping':
Initialization of bean failed; nested exception is
org.springframework.beans.factory.CannotLoadBeanClassException: Error loading
class [pl.xxx.controller.HomeController] for bean with name 'homeController'
defined in file [/var/lib/openshift/xxx/app-
root/runtime/dependencies/jbossews/webapps/web1/WEB-
INF/classes/xxx/controller/HomeController.class]: problem with class file or
dependent class; nested exception is java.lang.UnsupportedClassVersionError:
xxx/controller/HomeController : Unsupported major.minor version 52.0 (unable to
load class xxx.controller.HomeController)
Unsupported major.minor version 52.0
says that Java version is wrong (Java 7 intead Java 8).
Unsupported major.minor version 52.0
说 Java 版本是错误的(Java 7 intead Java 8)。
回答by user207421
The Unsupported major.minor version 52.0
error says that you have a Java 8 class file but a Java <= 7 JRE. So you haven't succeeded in installing Java 8 for Tomcat at all. You may need to adjust something in the Tomcat configuration to make it use Java 8.
该Unsupported major.minor version 52.0
错误表示您有一个 Java 8 类文件,但有一个 Java <= 7 JRE。所以你根本没有成功地为 Tomcat 安装 Java 8。您可能需要调整 Tomcat 配置中的某些内容以使其使用 Java 8。
回答by Jens
If you happen to run Tomcat as a service on Windows you might need to change the JRE that tomcat uses by issuing:
如果您碰巧在 Windows 上将 Tomcat 作为服务运行,您可能需要通过发出以下命令来更改 tomcat 使用的 JRE:
tomcat7w.exe //ES/<your_service_name>
Which should lead you to this dialog:
这将引导您进入此对话框:
Make sure "use default" is ticked or the right "Java virtual Machine" is used.
确保勾选“使用默认值”或使用正确的“Java 虚拟机”。