Maven Resources Plugin: Difference between revisions
Jump to navigation
Jump to search
Line 49: | Line 49: | ||
This will copy all text files found under src/main/java into ./target/classes and make them available in the class path. | This will copy all text files found under src/main/java into ./target/classes and make them available in the class path. | ||
'''Warning!''' If you specify just the <directory>/src/main/java</directory> resource under <resources>, this will remove all other implicit resources, including <directory>src/main/resources</directory> so if you were relying on that (for log4j.xml or whatever else) you will need to add it explicitly: | '''Warning!''' If you specify just the <directory>/src/main/java</directory> resource under <resources>, this will remove all other implicit resources, including <directory>src/main/resources</directory> so if you were relying on that (for <tt>log4j.xml</tt> or whatever else) you will need to add it explicitly: | ||
<pre> | |||
<build> | <build> | ||
... | ... | ||
Line 70: | Line 70: | ||
... | ... | ||
</build> | </build> | ||
</pre> |
Revision as of 08:22, 28 January 2016
External
- http://maven.apache.org/plugins/maven-resources-plugin/
- http://maven.apache.org/plugins/maven-resources-plugin/examples/filter.html
Internal
Variable Substitution in Resource Files
Set "filtering" to true as follows, and all variables will be substituted on copy:
<project> ... <build> ... <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> </resource> ... </resources> ... </build> ... </project>
Copy Text Files in target and Final Artifact
<build> ... <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.txt</include> </includes> </resource> </resources> ... </build>
This will copy all text files found under src/main/java into ./target/classes and make them available in the class path.
Warning! If you specify just the <directory>/src/main/java</directory> resource under <resources>, this will remove all other implicit resources, including <directory>src/main/resources</directory> so if you were relying on that (for log4j.xml or whatever else) you will need to add it explicitly:
<build> ... <resources> <resource> <directory>src/main/resources</directory> <includes> <include>**</include> </includes> </resource> <resource> <directory>src/main/java</directory> <includes> <include>**/*.txt</include> </includes> </resource> </resources> ... </build>