在使用带注释的类的hibernate-4构建期间创建模式

时间:2012-06-05 10:27:23

标签: hibernate maven schema

我正在尝试升级到Hibernate 4.1.3(从3.6.9开始)。该模型基于注释(即,使用@Entity和@Column注释定义持久化类)

maven build使用hibernate3-maven-plugin为架构创建sql脚本,但该插件不适用于4.1.3。我想过使用SchemaExportTask vi antrun,但我的理解是我需要显式配置要分析的类,我不知道如何在maven中获取它们。那么我该如何为这些类提供任务呢?

创建架构的任何其他帮助都会很棒。

1 个答案:

答案 0 :(得分:0)

Juplo创建了Maven plugin for Hibernate 4。该插件会自动扫描项目中的注释类,并支持包括Envers在内的模式导出。工作示例如下。检查official plugin configuration documentation以获取有关已使用选项的更多信息。

该插件会在schema.sql目标上的Maven /target目录中生成test个文件。 或者,您可以手动运行hibernate4:export目标来更新文件。

<project>
    <build>
        <plugins>
            <plugin>
                <groupId>de.juplo</groupId>
                <artifactId>hibernate4-maven-plugin</artifactId>
                <version>1.0.3</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>export</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <envers>true</envers>
                    <format>true</format>
                    <delimiter>;</delimiter>
                    <force>true</force>
                    <type>CREATE</type>
                    <target>SCRIPT</target>
                    <hibernateDialect>org.hibernate.dialect.PostgreSQL9Dialect</hibernateDialect>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>