2012-04-04 67 views
1

我想使用Maven的Hibernate3插件(由Codehaus開發),但根據上次發佈日期(2009-01-21),似乎沒有得到積極的支持。我需要使用Hibernate提供的hbm2ddl工具。你怎麼看?如何在Maven中使用hbm2ddl工具?

哪裏提供了hbm2ddl工具?我猜這不是包含它的Hibernate3 Maven插件,但它包含在hibernate依賴項中?

感謝

回答

1

也許你已經發現,與2.2版本結束舊插件的網站。看看這個網站: http://mojo.codehaus.org/hibernate3-maven-plugin/

正如你所看到的,有2個月前發佈的3.0版本。我們在Hibernate 3.5的項目中使用它,它工作得很好,做它應該做的事情。

Hibernate不需要提供給插件(至少直接),因爲在封面下這個東西使用Hibernate3 Ant任務(來自hibernate-tools工件)和Maven AntRun插件。所以插件對Hibernate(3.3.2.GA版本)本身具有依賴性。正如我所說的那樣,我們在Hibernate 3.5中沒有任何問題地使用它。

+0

謝謝,的確我在舊網站。那麼,Ant任務使用Hibernate 3.3.2.GA?我想從版本3.3.2.GA開始,一些映射更改已經完成。因此,在使用hbm2ddl生成模式時不會考慮它們? – 2012-04-04 13:22:27

+0

不幸的是,這次我幫不了你。我不知道映射是否真的發生了變化。我甚至沒有嘗試強制使用更新的Hibernate版本。對我們來說它是有效的,所以我們不再觸摸它:P。 – 2012-04-04 20:37:51

0

如果你想使用就是hbm2ddl電流休眠(5 +),以更好的質量生成的模式,那麼請看看項目:

https://github.com/Devskiller/hbm2ddl-maven-plugin

簡單的用例

<build> 
    <plugins> 
     <plugin> 
      <groupId>com.devskiller.hbm2ddl-maven-plugin</groupId> 
      <artifactId>hbm2ddl-maven-plugin</artifactId> 
      <version>0.9.2</version> 
      <extensions>true</extensions> <!-- required to run automatically --> 
      <configuration> 
       <packages> 
        <package>com.test.model</package> 
       </packages> 
      </configuration> 
     </plugin> 
    </plugins> 
</build>