Does Tomcat 7 support Java 8?

mkczyk picture mkczyk · Dec 21, 2015 · Viewed 41.2k times · Source

In offcial page of Tomcat it says that Tomcat 7 supports Java 8. If I download this and run with Java 8 it works.

But, on Openshift is Tomcat 7 (JBoss EWS 2.0). In this webpage it 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.

Why?


I tried to install Java 8 on Tomcat 7 on Openshift with this: https://stackoverflow.com/a/23895161/2442133 But it isnt' working for me. I have error:

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).

Answer

user207421 picture user207421 · Dec 21, 2015

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.