首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何诊断MySQL JDBC驱动程序的ClassNotFound异常

如何诊断MySQL JDBC驱动程序的ClassNotFound异常
EN

Stack Overflow用户
提问于 2011-03-17 05:29:20
回答 1查看 1.4K关注 0票数 0

我的get应用程序无法连接到MySQL,并出现以下错误:

原因: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

现在,mysql连接器jar显然位于我的类路径中: mysql- connector -java-5.0.7-bin.jar,位于WEB-INF/lib目录中。

所以说它“找不到”是没有意义的。我猜它一定是静态初始化失败了。

有什么方法可以诊断这个问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-17 05:55:26

虽然除了堆栈跟踪之外,我没有想出任何好的诊断工具,但我确实意识到了发生了什么。当然,堆栈跟踪有这样的线索:

代码语言:javascript
复制
Cannot load JDBC driver class 'com.mysql.jdbc.Driver'
    at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1136)
    at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)

DataSource是在web应用程序的context.xml文件中定义的,这意味着Tomcat使用父类加载器将驱动程序加载到web应用程序。该类加载器不能访问应用程序的类路径。

解决方案是将mysql jar放在Tomcat的共享库目录中。

一种不同的解决方案是将DataSource嵌入到应用程序中,而不是使用Tomcat的DataSource管理,从而允许股票Tomcat分发。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5332026

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档