Заменить шаблон замены фильтра ресурсов по умолчанию Maven

По умолчанию maven будет фильтровать ресурсы следующим образом:

<properties>
  <replace.me>value</replace.me>
</properties>

<some-tag>
  <key>${replace.me}</key>
</some-tag>

вы получите:

<some-tag>
  <key>value</key>
</some-tag>

Есть ли способ переопределить способ, которым maven выбирает заменяемые строки? В частности, я хочу иметь возможность использовать это:

<some-tag>
  <key>@[email protected]</key>
</some-tag>

чтобы получить тот же результат, что и выше.

Ответы

Ответ 1

Посмотрите параметр delimiters ресурсов mojo. Настройка плагина, подобного этому, сделает трюк:

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-resources-plugin</artifactId>
  <version>2.4.2</version>
  <configuration>
    <delimiters>
     <delimiter>${*}</delimiter><!-- to keep the default behavior -->
     <delimiter>@</delimiter><!-- to add Ant-like tokens style -->
    </delimiters>
  </configuration>
</plugin>

Ответ 2

Если вы хотите использовать только один подход, отключите дефиниторы по умолчанию:

<useDefaultDelimiters>false</useDefaultDelimiters>
<delimiters>
  <delimiter>@</delimiter>
</delimiters>