2016-10-31 120 views
0

我在我的项目pom.xml以下依赖性:找不到com.mysql.jdbc.Driver

<dependency> 
    <groupId>mysql</groupId> 
    <artifactId>mysql-connector-java</artifactId> 
    <version>5.1.40</version> 
</dependency> 

我没有任何东西在pom.xml定义有关mySQL

不过,我发现了以下错误吧:

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1332) 
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1166) 
at java.lang.Class.forName0(Native Method) 
at java.lang.Class.forName(Class.java:186) 
at com.myPRJ.ec.utils.DatabaseUtil.getConnection(DatabaseUtil.java:50) 
at com.myPRJ.ec.Login.verify.EmailVerifier.verify(EmailVerifier.java:75) 
at com.myPRJ.ec.Login.verify.EmailVerifier.getVerify(EmailVerifier.java:64) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:601) 
at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60) 
at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:205) 
at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75) 
at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:302) 
at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108) 
at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147) 
at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84) 
at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1542) 
at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1473) 
at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1419) 
at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1409) 
at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:409) 
at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:558) 
at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:733) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) 
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) 
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) 
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:528) 
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1099) 
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:670) 
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1520) 
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1476) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) 
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) 
at java.lang.Thread.run(Thread.java:722) 

我经过mysql-connector-java那是我的C:\Program Files (x86)\MySQL\Connector.J 5.1\mysql-connector-java-5.1.40-bin.jar盘上下方。我在Eclipse上运行mySQL 5.7.0和JDBC 4.0.0。 MySQL在Eclipse /数据库开发上直接运行得很好。

我在做什么错?

// =====================

编辑:

Maven是不更新上述依赖标签信息库。出现在.m2\repository中的MySQL连接器是2-版本5.1.30和版本5.1.38,我手动从中删除了它们 - 左侧.m2\repository\mysql为空。然后在Eclipse上运行Update Maven。 .m2\repository\mysql此更新后仍然为空。我应该去哪个MySQL连接器,wat做什么?

// ===============

EDIT 2:

原来我把下依赖管理标签mysql的依赖,而不是依赖一个。在我修正之后,花时间在腐败的jar上 - maven不停地给出奇怪的错误。一直工作6小时以上,抱歉虚惊! thx为富有洞察力的答复/评论。

现在全部修好了。

+0

将它添加到lib&重新启动后,它工作吗? – developer

+0

@javaguy由于某种原因,该jar文件不在.m2 \ repository中。当我在那里看到这样做 – Roam

回答

1

您应该检查您的.m2库是否位于Deployment Assembly中。点击右键单击文件夹项目>部署程序集,然后检查是否有像m2/maven库这样的东西。如果它们不是,请按“Add ..”> Java Build Path Entries并将其添加到路径WEB-INF/lib中进行部署。重新启动服务器,并应该工作!

编辑 - >在我的Eclipse中的名字是Maven依赖和部署路径是WEB-INF/lib目录

+0

thx为有用的答案。我期待在maven上做到这一点,但到目前为止,已经到目前为止,更新到maven资料库更新 – Roam

2

Tomcat服务器无法加载com.mysql.jdbc.Driver类,所以你需要将mysql-connector-java-5.1.40.jar文件添加到Tomcat服务器的应用程序库文件夹(C:\TOMCAT_HOME\apache-tomcat\webapps\YOUR_PROJECT\WEB-INF\lib),然后重新启动Tomcat服务器。

+0

thx为您的答案。有些东西不对,但是要解决这个问题。请看我的评论 – Roam

0

我有这个问题,当我的mysql连接器的版本不匹配到已安装的mysql服务器。您可以通过在终端中输入mysql --version命令来检查mysql版本。你必须通过mysql-server分配号码来选择相应的版本,例如如果mysql版本是:Ver 14.14 Distrib 5.7.17,请不要使用mysql-connect-java:6.0.6。

相关问题