To do that you need to use an ant task.

<build>
[...]
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<phase>generate-sources</phase>
<configuration>
<tasks name="generePropertiesFile">
<!-- ensure that the target directory has been created. -->
<mkdir dir="target/classes/" />
<propertyfile file="target/classes/my_bundle.properties"
comment="comment in the file.">
<!-- list or key / value pair to be inserted in the generated properties file.  -->
<entry key="key1" value="${basedir}/value1" />
<entry key="key2" value="${basedir}/value2" />
</propertyfile>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>commons-net</groupId>
<artifactId>commons-net</artifactId>
<version>1.4.1</version>
</dependency>
<dependency>
<groupId>ant</groupId>
<artifactId>ant-commons-net</artifactId>
<version>1.6.5</version>
</dependency>
<dependency>
<groupId>ant</groupId>
<artifactId>ant-nodeps</artifactId>
<version>1.6.5</version>
</dependency>
</dependencies>
</plugin>
[...]
</build>

I almost use it on every project because when you try to use maven properties like ${basedir} you won't have problème with the file separator nightmare since this ant task escape properly the '\' caractère.