Unsupported major.minor version 52.0 (unable to load class XXX

The java project builds from a higher version JDK to a lower version JDK and reports an error. This is caused by the JDK version used when compiling again is lower than the version you originally compiled. The maven project reports an error when building on the server (Unsupported major.minor version 52.0 ):

java.lang.UnsupportedClassVersionError: com/byron4j/listener/InitListener : Unsupported major.minor version 52.0 (unable to load class com.byron4j.listener.InitListener)
at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2961)
at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1210)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1690)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:506)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:488)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:115)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4932)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5528)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1095)
at org.apache.catalina.startup.HostConfigDeployWar.run(HostConfig.java:1930)atjava.util.concurrent.ExecutorsRunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)

After deploying to the linux server, the Unsupported major.minor version 52.0 error is reported when the project is started. The inspection finds that the JDK version on the linux server is too low. Then, the project specifies the JDK version as 1.7, and the release is OK.

The official version number list of the JDK version is as follows:

JDK 8.0 = 52,
JDK 7.0 = 51,
JDK 6.0 = 50,
JDK 5.0 = 49,
JDK 1.4 = 48,
JDK 1.3 = 47,
JDK 1.2 = 46,
JDK 1.1 = 45

Exactly the specified JDK version is 52, but since the server is JDK 7 causes Unsupported major.minor version 52.0 to be thrown

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325705060&siteId=291194637