В проекте Java я использую подключаемый модуль SQL Maven для выполнения сценариев SQL с заданным профилем. Вот часть моего pom.xml :
<profile>
<id>import_oracle</id>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sql-maven-plugin</artifactId>
<version>1.5</version>
<dependencies>
[oracle dependency]
</dependencies>
<configuration>
[oracle conf: username, password, DB url, driver class..]
</configuration>
<executions>
<execution>
<id>default-cli</id>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<srcFiles>
<srcFile>sql/datas/V2.0.0/foo.sql</srcFile>
...
</srcFiles>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
Это хорошо работает. Выполняю через mvn sql:execute -Pimport_oracle.
Теперь я хотел бы выполнить эти SQL-скрипты условно с их именами файлов/папок. Обычно в моем проекте есть такая структура, где имя папки соответствует версии моего проекта:
sql/datas/V2.0.0/foo.sql
sql/datas/V2.0.0/bar.sql
sql/datas/V2.5.0/helloworld.sql
sql/datas/V3.0.0/stuff.sql
Если, например, в pom моего проекта у меня есть <version>2.5.0</version>, я бы хотел, чтобы подключаемый модуль SQL Maven выполнял первые 3 сценария (поскольку их имя папки равно ‹= моей версии проекта), но не последний, потому что 3.0.0 > 2.5. 0
Могу ли я добиться этого с помощью подключаемого модуля SQL Maven? Я не вижу ничего полезного в doc для этого. Может ли задача муравья быть лучшим решением?