1

我正在使用 Hibernate 2 + Spring 3 + Liquibase 1.9。我已经像往常一样使用 Hibernate 注释创建了我的实体类现在我想自动生成应该包含 DB CREATE 语句的 Liquibase 更改日志。我不想手动创建更改日志 XML 文件,因为它感觉乏味且容易出错,尤其是第一次。

令我困惑的是,在 maven 上没有 maven 目标来查看 mt 实体类并以与 hbm2ddl 类似的方式生成 Liquibase 更改日志?

我在谷歌上搜索了很多页面但无济于事,他们似乎将我指向 Liquibase 命令行和一些 ANT 脚本,但在 maven 上应该是可能的!

所以我想我的问题是:如何调用一个流程来为用 JPA 注释编写的新实体类生成 Liquibase 更改日志?

谢谢

4

2 回答 2

1

此时,liquibase/hibernate 集成不支持用于 hibernate 比较的 JPA 注释。

当 hibernate 集成确实支持 JPA 时,您仍然需要确保生成的 changeSets 实际上符合您的期望,因为任何数据库差异工具都不了解更改的意图(请参阅http://blog.liquibase.org/ 2007/06/the-problem-with-database-diffs.html)。出于这个原因,我倾向于从一开始就手动编写变更集。

于 2011-09-08T16:38:25.860 回答
1

我遇到了同样的问题,并通过首先使用 hibernate hbm2ddl 创建数据库(设置 hibernate.hbm2ddl.auto 来创建或更新),然后针对生成的数据库使用 liquibase generateChangeLog 命令来解决它。

于 2011-10-07T07:51:07.983 回答