我正在尝试升级到 Hibernate 4.1.3(从 3.6.9)。该模型是基于注解的(也就是说,持久化类是用@Entity 和@Column 注解定义的)
maven 构建使用 hibernate3-maven-plugin 为模式创建 sql 脚本,但该插件不适用于 4.1.3。我想过使用 SchemaExportTask vi antrun,但是我的理解是我需要显式配置要分析的类,我不知道如何在 maven 中获取它们。那么如何为任务提供类?
创建模式的任何其他帮助都会很棒。
Juplo为 Hibernate 4 创建了 Maven 插件。该插件会自动扫描您的项目以查找带注释的类,并支持包括 Envers 在内的模式导出。工作示例如下。查看官方插件配置文档以获取有关使用选项的更多信息。
该插件在目标上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>