Я использую maven-resources-plugin для копирования файла из ресурсов dir для вывода dir и введения переменной; есть проект pom:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.4</version>
<configuration>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</plugin>
файл ресурсов выглядит примерно так:
operation=${var}
и в нем есть:
<properties>
<operation>true</operation>
</properties>
Когда я собираю проект (пакет mvn -U clean) локально, все работает нормально: файл .properties правильно находится внутри jar и содержит «operation = true».
Проблема возникает, когда я развертываю jar в своем артефакте. Если я скачаю и открою банку из артефакта, я все равно найду файл .properties, но в этом случае он содержит: «operation = $ {var}» (плагин не вводит значение переменной). Команда для сборки внутри файла .yml та же, что и у меня локально (пакет mvn -U clena).
Есть предложения?
Единственное отличие, которое я вижу, в том, что на моем компьютере установлен maven 3.6.1, а на сервере, где я создаю проект для артефакта, - maven 3.3.3.