2012-01-08 161 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> 
相關問題