java com/mysql/jdbc/Driver:不支持的major.minor 版本52.0
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/38357986/
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
com/mysql/jdbc/Driver : Unsupported major.minor version 52.0
提问by Nu?ito de la Calzada
I have this problem when I deploy my war USING mysql-connector-java-6.0.3.jaron a Apache Tomcat/7.0.52 (Ubuntu) JVM: 1.7.0_79-b14 compiled with JDK 1.7
当我在 Apache Tomcat/7.0.52 (Ubuntu) JVM 上使用mysql-connector-java-6.0.3.jar部署我的War时遇到这个问题:1.7.0_79-b14 用JDK 1.7编译
java.lang.UnsupportedClassVersionError: com/mysql/jdbc/Driver : Unsupported major.minor version 52.0 (unable to load class com.mysql.jdbc.Driver)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2948)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1208)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1688)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1569)
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Class.java:191)
com.tdk.callbacks.CallBacksListener.doGet(CallBacksListener.java:45)
javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
This one when I compile with 1.8
我用1.8编译时的这个
java.lang.UnsupportedClassVersionError: com/tdk/callbacks/CallBacksListener : Unsupported major.minor version 52.0 (unable to load class com.tdk.callbacks.CallBacksListener)
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2948)
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1208)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1688)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1569)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:315)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
java.lang.Thread.run(Thread.java:745)
and this one with the 1.6:
而这个与1.6:
java.lang.Error: Unresolved compilation problem:
Multi-catch parameters are not allowed for source level below 1.7
回答by Nikem
The problem is not with compilation. The problem is that you try to runyour Tomcat with deployed application using java 7. As your mysql driver and, potentially, your application are compiled with java 8, you have to use java 8 to run Tomcat
问题不在于编译。问题是您尝试使用 java 7 使用已部署的应用程序运行Tomcat。作为您的 mysql 驱动程序,并且可能您的应用程序是使用 java 8 编译的,您必须使用 java 8 来运行 Tomcat