With this configuration, the plugin replaces any placeholders entries, eg: {{key:value}} or simple {{key}}, by a value provided by a Java Property file.
<plugin>
<groupId>com.xebialabs.utils</groupId>
<artifactId>placeholders-mustachifier-maven-plugin</artifactId>
<version>0.5-SNAPSHOT</version>
<configuration>
<filesets>
<fileset>
<directory>target/classes/com/myproject/resources</directory>
<include>*.properties</include>
</fileset>
</filesets>
<valueProvider>
<file>
<path>~/myproject/local-values.properties</path>
</file>
</valueProvider>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>mustache-tovalue</goal>
</goals>
</execution>
</executions>
</plugin>
the property file before the plugin execution
param1={{PARAM1:45}}
param2={{param22}}
param3=45
param4=http://{{host:localhost}}:{{port:8080}}/{{context:default}}
param5={{param5}}
using this property file as values:
PARAM1=45
param5=benoit
host=www.xebialabs.com
port=9090
context=xldeploy
the property file after the plugin execution
param1=45
param2={{param22}}
param3=45
param4=http://www.xebialabs.com:9090/xldeploy
param5=benoit