2012-01-08 162 views
12

我正在开发一个使用maven spring和hibernate的web应用程序,我需要使用hibernate创建模式,为此我在连接到MySQL 5.5数据库的pom.xml未找到JDBC驱动程序类:com.mysql.jdbc.Driver

<!-- MySql 5.5 Connector --> 
    <dependency> 
     <groupId>mysql</groupId> 
     <artifactId>mysql-connector-java</artifactId> 
     <version>5.1.15</version> 
    </dependency> 

这在我Libraries进口mysql-connector-java-5.1.15.jarMaven Dependencies下,但是当我尝试连接到数据库,它给了我Exception in thread "main" org.hibernate.HibernateException: JDBC Driver class not found: com.mysql.jdbc.Driver

我已经完成了这个工作,就像时代的超越,但是当我不习惯使用Maven来管理我的依赖和构建项目时,我做到了这一点。我刚刚在Eclipse IDE中的Dynamic Web Projectlib文件夹中使用了相同的jar文件。

有人能告诉我我在这里错过了什么,还有什么我需要在我的构建路径中有这个罐子?

谢谢。

回答

15

首先,我需要连接到MySQL 5.5的jar应该已经mysql-connector-java-5.1.15-bin.jar但不mysql-connector-java-5.1.15.jar。其次,这个jar在maven仓库中不可用,所以我需要手动将它添加到我的本地maven仓库中,然后将它作为依赖添加到我的pom.xml中。

通过

mvn install:install-file -Dfile=C:\Libraries\mysql-connector-java-5.1.15-bin\mysql-connector-java-5.1.15-bin.jar -DgroupId=mysql -DartifactId=mysql-connector-java -Dversion=5.1.15-bin -Dpackaging=jar 

添加mysql-connector-java-5.1.15-bin.jar到本地的仓库,然后添加以下依赖于项目的pom.xml

<!-- MySql 5.5 Connector --> 
    <dependency> 
     <groupId>mysql</groupId> 
     <artifactId>mysql-connector-java</artifactId> 
     <version>5.1.15-bin</version> 
    </dependency> 
+1

没有来自Maven仓库的-bin后缀的JAR工作得很好,我自己使用5.1.20。也许不是JAR的名称,这真的没有关系,但是从第一个到第二个的内容已经改变了。澄清这可能会使答案更好一点。 – 2014-02-18 22:00:47

2

解压缩生成的JAR文件。有一个文件夹WEB-INF in,然后检查这个WEB-INF/lib中是否存在mysql-connector-java-5.1.15.jar。

+0

应用结构已经取得了通过Maven的Java Web应用程序,为什么Maven依赖JAR在WEB-INF内的lib文件夹?你不是指解压缩的“mysql-connector-java-5.1.15.jar”中的WEB-INF文件夹,是吗?我错过了什么? – skip 2012-01-08 18:12:45

+0

即使我通过将“mysql-connector-java-5.1.15.jar”添加到构建路径来手动配置构建路径,它也会给出相同的错误,我不确定是否应该使用maven来完成此操作webapp项目和maven一样,我在'Java Resources'中看到依赖关系。 – skip 2012-01-08 18:17:45

+0

我只是生成架构,我不认为WEB-INF中的lib文件夹应该与它有什么关系?我不敢相信我被卡住了。 – skip 2012-01-08 18:26:05

6

谢谢上面的答案 - 只是对NetBeans的用户评论: (姓名与您的版本替换)

  1. MySQL的JAR可以下载here
  2. MVN可执行文件可以是在c:\Program Files\NetBeans 7.2.1\java\maven\bin
  3. 运行set JAVA_HOME=C:\Program Files (x86)\Java\jdk1.7.0_10
  4. 找到,那么上面的命令将工作:mvn install:install-file -Dfile=mysql-connector-java-5.1.15-bin.jar -DgroupId=mysql -DartifactId=mysql-connector-java -Dversion=5.1.15-bin -Dpackaging=jar
  5. 安装包可以在M2存储库中找到个人文件夹
1

我的工作液

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

加入以上依赖于pom.xml的作品对我来说...

0

添加belowcode到pom.xml文件

<dependency> 
     <groupId>mysql</groupId> 
     <artifactId>mysql-connector-java</artifactId> 
     <version>5.1.6</version> 
    </dependency> 
相关问题