Confluence Cannot Start Due to 'Unsupported major.minor version 49.0'
Symptoms
Both Application server and Confluence can run, but accessing Confluence will result in 'Unsupported major.minor version 49.0'. The following appears in the atlassian-confluence.log
:
javax.servlet.ServletException: org/apache/jsp/default_jsp (Unsupported major.minor version 49.0)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:273)
caused by: java.lang.UnsupportedClassVersionError: org/apache/jsp/default_jsp (Unsupported major.minor version 49.0)
at java.lang.ClassLoader.defineClass0(Native Method)
Cause
This is due to an incompatible JVM version. '49' is a specific JVM error, it means that the Java files in <confluencestd-install>\work were compiled with a different version of Java (for example Java 5). Hence, using an earlier version of JVM (for example JVM 1.4) would be incompatible as the binaries (*.class
) will not be recognized.
Resolution
There are three ways to solve this:
- If you really need to use the earlier version Java you would need to force Confluence to rebuild and recompile using that Java version. This is achievable via deleting the <confluence-std-install>\ work\standalone folder and run tomcat again as it will recompile on the run.
- Revert to the original Java you were using
- Use a later version of Java