私はmaven springとhibernateを使用してWebアプリケーションを開発しています。MySQL5.5データベースに接続するには、pom.xml
に次のようなhibernateを使用してスキーマを作成する必要があります。
<!-- MySql 5.5 Connector -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-Java</artifactId>
<version>5.1.15</version>
</dependency>
これはmysql-connector-Java-5.1.15.jar
をMaven Dependencies
の下のLibraries
にインポートしましたが、データベースに接続しようとするとException in thread "main" org.hibernate.HibernateException: JDBC Driver class not found: com.mysql.jdbc.Driver
が表示されます。
私はこれを何十億回も行ってきましたが、Mavenを使用して依存関係を管理したりプロジェクトをビルドしたりしていないときに行っていました。私はEclipse IDEのDynamic Web Project
のlib
フォルダーに同じjarファイルを使用していただけです。
誰かが私にここで何が欠けているのか、そしてこのjarをビルドパスに含めるために他に何が必要なのかを教えてもらえますか?
ありがとう。
最初に、MySQL 5.5に接続する必要があるjarはmysql-connector-Java-5.1.15-bin.jar
である必要がありますが、mysql-connector-Java-5.1.15.jar
ではないはずです。次に、このjarはmavenリポジトリでは使用できないため、ローカルのmavenリポジトリに手動で追加し、依存関係としてpom.xml
に追加する必要がありました。
mysql-connector-Java-5.1.15-bin.jar
をローカルのMavenリポジトリに追加する
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
次に、プロジェクトのpom.xml
に次の依存関係を追加します。
<!-- MySql 5.5 Connector -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-Java</artifactId>
<version>5.1.15-bin</version>
</dependency>
上記の回答に感謝-NetBeansユーザーへのコメントのみ:(名前はご使用のバージョンに置き換えられます)
c:\Program Files\NetBeans 7.2.1\Java\maven\bin
_にありますset Java_HOME=C:\Program Files (x86)\Java\jdk1.7.0_10
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
_私の作業ソリューション
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-Java</artifactId>
<version>5.1.18</version>
</dependency>
上記の依存関係をpom.xmlに追加するとうまくいきます...
生成されたJARファイルを解凍します。 WEB-INFフォルダーがあります。次に、このWEB-INF/libにmysql-connector-Java-5.1.15.jarが存在するかどうかを確認してください。
以下のコードをpom.xmlファイルに追加します
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-Java</artifactId>
<version>5.1.6</version>
</dependency>
SELECT version()
を使用してMySqlバージョンを確認してから、pom.xml
のmysqlバージョンの依存関係を確認します
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-Java</artifactId>
<version>8.0.14</version>
</dependency>
application.properties
ファイル:
spring.datasource.url=jdbc:mysql://localhost:3306/db_name
spring.datasource.username=root
spring.datasource.password=
spring.datasource.testWhileIdle=true
spring.datasource.validationQuery = SELECT 1
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update
spring.jpa.properties.hibernate.dialact=org.hibernate.dialact.MySQL5Dialact