【发布时间】:2010-07-12 11:56:35
【问题描述】:
我正在研究使用 Hibernate 进行数据库访问的东西。我已经完成了所有设置和工作,因此我可以使用 mvn hibernate3:hbm2ddl 来构建数据库模式,并且我正在使用 mvn liquibase:update 将初始数据填充到数据库中(DBUnit 是我的第一次尝试,但我不能'无法使其与 Oracle 和 Liquibase 一起工作,这只是第一次工作)。
我的问题是,如果我执行 hbm2ddl 删除并重新创建架构,那么 Liquibase DATABASECHANGELOG 表将保持不变,这意味着 Liquibase 下次运行时不会重新创建数据。为了解决这个问题,我配置了 mvn sql:execute 以在有问题的两个表上执行删除,但这意味着如果我想从头开始构建数据库是安全的,我现在需要执行“mvn hibernate3:hbm2ddl sql:执行 liquibase:update"
我真正想要的是能够配置一些在运行 hibernate3:hbm2ddl 命令时执行 sql:execute 命令的东西,这样我就知道执行该命令会让我很干净数据库状态。如果做不到这一点,配置会自动按顺序运行多个命令,因此我可以配置例如“mvn execute:db-rebuild”以自动运行上述三个命令。
我见过提到 mojo-executor,但没有关于实际如何使用它的示例。我什至不确定它是否适合我想要的工具......
【问题讨论】:
标签: maven-2