【问题标题】:Unable to build EntityManagerFactory + JDBC Driver class not found无法构建 EntityManagerFactory + 找不到 JDBC 驱动程序类
【发布时间】:2013-10-18 19:43:21
【问题描述】:

我有这个项目,我正在使用 hibernate、maven、gwt、JPA、Tomcat 和 spring、mysql。无论如何,我一直试图解决这个错误,但没有成功。 我已经配置了我的 mysql 连接器“mysql-connector-java” 这是我的错误:

Exception in thread "main" javax.persistence.PersistenceException: [PersistenceUnit: projetA] Unable to build EntityManagerFactory
    at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:892)
    at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:56)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:48)
    at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:32)
    at com.pac.projetA.shared.Dto.Main.main(Main.java:14)
Caused by: org.hibernate.HibernateException: JDBC Driver class not found: org.mysql.jdbc.Driver
    at org.hibernate.connection.DriverManagerConnectionProvider.configure(DriverManagerConnectionProvider.java:89)
    at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:137)
    at org.hibernate.ejb.InjectionSettingsFactory.createConnectionProvider(InjectionSettingsFactory.java:51)
    at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:91)
    at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2163)
    at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2159)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1383)
    at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:954)
    at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:883)
    ... 4 more
Caused by: java.lang.ClassNotFoundException: org.mysql.jdbc.Driver
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:169)
    at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:192)
    at org.hibernate.connection.DriverManagerConnectionProvider.configure(DriverManagerConnectionProvider.java:84)
    ... 12 more
    enter code here

【问题讨论】:

  • 你是如何配置jar的?
  • 我在类路径中添加了 jar + 我在 pom.xml 中添加了依赖项
  • 我建议你不要两者都做。
  • 我试过了,还是不行:(
  • 显然您的类路径设置不正确。玩弄它。

标签: java mysql hibernate maven gwt


【解决方案1】:

我记得你使用的是 maven。如果您的 pom.xml 中有以下条目,请确保清理并构建项目并重新启动服务器以获取对类路径的更改

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

顺便说一句,这家伙有一些很好的教程

这是一个如何使用hibernate、maven和mysql

http://www.mkyong.com/spring/maven-spring-hibernate-annotation-mysql-example/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-21
    • 2011-04-12
    • 2015-06-15
    相关资源
    最近更新 更多