Maven с инструментами гибернации
Я пытаюсь сгенерировать мои классы и hibernate.cfg.xml с помощью Maven. Ну, у меня есть классы в моем проекте, которые зависят от сгенерированных файлов Java, поэтому мне, вероятно, придется выполнить этот процесс при очистке проекта или так? Я не знаю, как настроить это для работы, так что это один вопрос. Ну, у меня есть файл database.properties, который в порядке, и много файлов hbm.xml, которые я изменил. Теперь я хочу сгенерировать hibernate.cfg.xml и все java-файлы из файлов hbm.xml и файла database.properties. Моя текущая запись Maven выглядит так:
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>hibernate3-maven-plugin</artifactId>
<version>2.2</version>
<executions>
<execution>
<id>hbm2java</id>
<phase>generate-sources</phase>
<goals>
<goal>hbm2java</goal>
</goals>
<configuration>
<components>
<component>
<name>hbm2java</name>
<implementation>configuration</implementation>
<outputDirectory>src/main/java</outputDirectory>
</component>
</components>
<componentProperties>
<jdk5>true</jdk5>
<ejb3>true</ejb3>
<propertyfile>src/main/resources/database.properties</propertyfile>
</componentProperties>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.0.8</version>
</dependency>
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib-nodep</artifactId>
<version>2.1_3</version>
</dependency>
</dependencies>
</plugin>
Может ли кто-нибудь помочь мне с этим? Я действительно не знаю, что делать, чтобы эта штука работала.
1 ответ
Ну, мое решение заключается в использовании моего написанного мной плагина. Здесь вы можете найти его: http://uploaded.to/file/j3j7b652
Пример использования:
<plugin>
<groupId>com.blazebit</groupId>
<artifactId>HibernateCfgBuilder</artifactId>
<version>1.0</version>
<executions>
<execution>
<id>HibernateCfgBuilder</id>
<phase>generate-sources</phase>
<goals>
<goal>HibernateCfgBuilder</goal>
</goals>
</execution>
</executions>
<configuration>
<hbmXmlFilesDir>src/main/resources/com/company/model/</hbmXmlFilesDir>
<configFile>target/classes/hibernate.cfg.xml</configFile>
<packageName>com.company.model</packageName>
</configuration>
</plugin>
Если у вас есть какие-либо вопросы, задавайте. Свойства конфигурации все задокументированы.