Я использую плагин Build Helper Maven, чтобы прикрепить SQL изменения как артефакт развертывания, но плагин падает, когда отсутствует дополнительный артефакт.
Не удалось установить artifact org.test.app1: app1: sql: 1.2.1: app1 / src / main / database-source / 1.2.1 / dba. sql (нет такого файла или каталога) -> [Help 1]
Файл SQL присутствует в большинстве версий приложения, но не во всех из них, поскольку второстепенные версии приложения могут не включать SQL изменения. Структура каталогов для файлов SQL включает их версии отдельно, как показано ниже:
src/
main/
database-source/
1.0.0/
dba.sql
1.2.0/
dba.sql
1.2.1/
-- no "dba.sql" file here since there aren't SQL changes in this version
1.3.0/
dba.sql
Используемая мной конфигурация плагина Build Helper:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<id>attach-artifacts</id>
<phase>package</phase>
<goals>
<goal>attach-artifact</goal>
</goals>
<configuration>
<artifacts>
<artifact>
<file>src/main/database-source/${project.version}/dba.sql</file>
<type>sql</type>
</artifact>
</artifacts>
</configuration>
</execution>
</executions>
</plugin>
Я читал о <skipAttach>
тег, но не понимаю, как его использовать.
Как я могу молча пропустить дополнительный артефакт, когда файл отсутствует (как в версии 1.2.1 выше)?