Я настраиваю maven для использования аннотированных классов Java и создания некоторого 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>
Затем я должен отфильтровать файл hibernate.cfg.xml из моей рабочей банки, поскольку я не хочу отправлять что-либо, связанное с моей внутренней средой разработки.