в Maven Я хочу выполнить сборку только в том случае, если артефакт еще не установлен в репозиторий. Моя идея - использовать профиль, который по умолчанию неактивен, но будет активирован, если артефакт отсутствует. До сих пор я не был успешным, потому что кажется, что свойства Maven не могут использоваться для активации профиля?Maven: активация профиля в зависимости от свойства localRepository?
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>
Есть ли какой-то обходной путь или альтернатива, как я могу проверить наличие моего артефакта и при необходимости запускать сборку? Спасибо за любые идеи!