в Maven Я хочу выполнить сборку, только если артефакт еще не установлен в хранилище. Моя идея - использовать профиль, который по умолчанию неактивен, но будет активирован, если артефакт отсутствует.
Пока что мне это не удалось, потому что кажется, что свойства Maven нельзя использовать для активации профиля?
settings.xml:
...
<localRepository>/local/m2repo</localRepository>
...
1) Это работает:
pom.xml:
...
<profile>
<id>my-profile</id>
<activation>
<activeByDefault>false</activeByDefault>
<file>
<missing>/local/m2repo/something</missing>
</file>
</activation>
...
</profile>
2) Это не работает:
pom.xml:
...
<profile>
<id>my-profile</id>
<activation>
<activeByDefault>false</activeByDefault>
<file>
<missing>${settings.localRepository}/something</missing>
</file>
</activation>
...
</profile>
3) Это тоже не сработает:
settings.xml:
...
<properties>
<local.repository>${settings.localRepository}</local.repository>
</properties>
...
pom.xml:
<profile>
<id>my-profile</id>
<activation>
<activeByDefault>false</activeByDefault>
<file>
<missing>${local.repository}/something</missing>
</file>
</activation>
</profile>
Есть ли какой-нибудь обходной путь или альтернатива, как я могу проверить существование моего артефакта и запускать сборку только при необходимости?
Спасибо за любые идеи!