Tomcat7支持Java8吗?

Tomcat7支持Java8吗?,java,tomcat,jboss,openshift,Java,Tomcat,Jboss,Openshift,其中说Tomcat7支持Java8。如果我下载这个并用Java8运行,它就可以工作了 但是,Openshift上的是Tomcat7(JBoss EWS 2.0)。里面说EWS 2.0。如果我将Java8应用程序部署到Openshift(Tomcat7),它将无法工作 为什么? 我尝试在Openshift的Tomcat 7上安装Java 8,方法如下: 但这对我不起作用。我有一个错误: org.springframework.beans.factory.BeanCreationException

其中说Tomcat7支持Java8。如果我下载这个并用Java8运行,它就可以工作了

但是,Openshift上的是Tomcat7(JBoss EWS 2.0)。里面说EWS 2.0。如果我将Java8应用程序部署到Openshift(Tomcat7),它将无法工作

为什么?


我尝试在Openshift的Tomcat 7上安装Java 8,方法如下: 但这对我不起作用。我有一个错误:

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
表示Java版本错误(Java 7 intead Java 8)。Unsupported major.minor version 52.0错误表示您有一个Java 8类文件,但有一个Java如果您碰巧在Windows上作为服务运行Tomcat,您可能需要通过发出以下命令来更改Tomcat使用的JRE:

tomcat7w.exe //ES/<your_service_name>
tomcat7w.exe//ES/
这将引导您进入此对话框:


确保勾选了“使用默认值”或使用了正确的“Java虚拟机”。

这是您引用的异常中的Springbean。这可能是春天的问题。您正在运行哪个版本的Spring?JBOSS上的Tomcat可能与Apache站点上的版本有所不同。我相信JVM,而不是你列出的引文。我使用Tomcat和Java 8,但不是Spring。这是因为他们的机器安装了Java JRE 7。我的应用程序在我的计算机上使用Tomcat 7工作,但在Openshift上不使用Tomcat 7。如果我在pom.xml中将版本Maven Java编译器1.8更改为1.7,它在Openshift中也可以工作。我的版本Spring 4.1.6,Maven 3.3,Java compiler 1.8。请注意,您链接的EWS网站并没有声明EWS不支持Java 8,它只是声明Java 8不在“企业支持的”配置中。例如,如果您从RedHat购买支持并在Java8上运行,他们可以免费要求您在Java7上运行,而不是在Java8下修复问题。话虽如此,我打赌@EJP的答案是正确的:您正在Java7运行时上运行您的Java8编译代码。这就是“不受支持的主版本。次版本”告诉您的。