我正在设置 maven 来获取带注释的 java 类并生成一些 DDL,这些 DDL 因数据库而异。有一个更好的方法吗?似乎我应该能够过滤 hbm2ddl 插件的输入(作为管道的一部分),而不是告诉它对资源过滤的输出进行操作(然后我必须从我的最终 jar 中过滤出来)。
我正在过滤我的 hibernate.cfg.xml 文件以根据本地开发人员的设置替换环境属性:
<build>
<filters>
<filter>${user.home}/datamodel-build.properties</filter>
</filters>
<resources><resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource></resources>
</build>
然后我在输出上运行 hbm2ddl
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>hibernate3-maven-plugin</artifactId>
...
<configuration>
<componentProperties>
<configurationfile>target/classes/com/myOrg/datamodel/hibernate.cfg.xml</configurationfile>
</plugin>
然后我必须从我的生产 jar 中过滤掉 hibernate.cfg.xml,因为我不想发布与我的内部开发环境相关的任何内容。