Wie kommt man Hibernate3-maven-plugin hbm2ddl zu JDBC-Treiber zu finden?
-
26-09-2019 - |
Frage
Ich habe ein Java-Projekt, das ich mit Maven bin Gebäude. Ich versuche jetzt, die Hibernate3-maven-Plugin erhalten die hbm2ddl Tool ausführen eine schema.sql-Datei zu generieren ich verwenden kann, das Datenbankschema aus meiner kommentierten Domain-Klassen zu erstellen. Dies ist eine JPA-Anwendung, die Hibernate als Provider verwendet.
In meiner persistence.xml Datei nenne ich die MySQL-Treiber aus:
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
<property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
Wenn ich Maven laufen, ich sehe es die Verarbeitung alle meine Klassen, aber wenn es um das Schema zu Ausgang geht, ich die folgende Fehlermeldung erhalten:
ERROR org.hibernate.connection.DriverManagerConnectionProvider - JDBC Driver class not found: com.mysql.jdbc.Driver
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
Ich habe die MySQL-Treiber als Abhängigkeit dieses Moduls. Allerdings scheint es, wie das hbm2ddl Werkzeug kann es nicht finden. Ich hätte gedacht, dass das Maven Plugin den lokalen Maven-Datei-Repository für diesen Treiber suchen bekannt wäre. Was soll das?
Der relevante Teil meiner pom.xml ist dies:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>hibernate3-maven-plugin</artifactId>
<executions>
<execution>
<phase>process-classes</phase>
<goals>
<goal>hbm2ddl</goal>
</goals>
</execution>
</executions>
<configuration>
<components>
<component>
<name>hbm2ddl</name>
<implementation>jpaconfiguration</implementation>
</component>
</components>
<componentProperties>
<persistenceunit>my-unit</persistenceunit>
</componentProperties>
</configuration>
</plugin>
Lösung
dachte ich es aus. Sie haben die entsprechenden JDBC-Treiber als Abhängigkeit des Plug-in hinzuzufügen. Hinzufügen es als Abhängigkeit des Moduls tut nichts. Das scheint mir überraschend und irgendwie lahm tatsächlich.
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<type>jar</type>
<version>5.0.8</version>
</dependency>
</dependencies>