运行tomcat'java.lang.ClassNotFoundException:com.mysql.jdbc.Driver'时出现此错误。我正在使用Eclipse(Indigo,J2EE版本)/ Maven(m2e-wtp)/ Tomcat 7.0的组合。我已将此依赖项包含在我的Web应用程序的pom文件中(从头开始构建)。
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
我在'Problems'视图中没有遇到任何编译错误,但是当我从'Servers'视图运行Tomcat服务器时,我收到了这些错误。它清楚地表明Tomcat无法找到Class并且它是classpath配置错误,我希望maven能够处理这个问题。
我查看了与'java.lang.ClassNotFoundException:com.mysql.jdbc.Driver'相关的其他问题,但没有多大帮助。
我非常感谢任何帮助。
/ **这就是我加载Driver * /
的方法static {
DriverAdapterCPDS cpds_Customer = new DriverAdapterCPDS();
try { cpds_Customer.setDriver(productConfig.getProperty("dbcp.connection.customer.driver_class"));
} catch (ClassNotFoundException e) {
// log.error("setDriver Exception " + e);
e.printStackTrace();
}
}
答案 0 :(得分:18)
Tomcat 7要求JDBC驱动程序JAR必须进入其/ lib目录:
http://tomcat.apache.org/tomcat-7.0-doc/jndi-datasource-examples-howto.html
搜索“忘记”一词。
答案 1 :(得分:2)
确保驱动程序实际上被复制到您的webapp WEB-INF / lib目录和wtp deploy dir(类似于/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/)工作区)。
我发现maven-wtp集成比完美更糟糕,因为我经常偶然发现这个问题。
答案 2 :(得分:-1)
此错误:java.lang.ClassNotFoundException:com.mysql.jdbc.Driver
你需要“导入com.mysql.jdbc.Driver;”即使它在app运行之前没有使用过。