Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.0.1
-
None
-
None
-
osx 10.4.6, java 1.4.2_06
Description
The war plugin only honours properties specified in a properties file, identified in a build/filters/filter element.
To be consistent with regular resource filtering, it should honour properties specified on the CL, in a profile, in a plugin, or in the pom (eg., ${project.version} ). None of these currently work.
To demonstrate:
mvn archetype:create -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-webapp -DarchetypeVersion=1.0-alpha-4 -DgroupId=ca.ucalgary.tlc -DartifactId=my-webapp
And then add this to the pom.xml:
<build>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<webResources>
<resource>
<filtering>true</filtering>
<directory>${basedir}/src/main/webapp</directory>
<includes>
<include>*/.xml</include>
</includes>
</resource>
</webResources>
</configuration>
</plugin>
</plugins>
</build>
And finally change the web.xml produced by the archetype so there is something to filter:
<web-app>
<display-name>${project.name}</display-name>
</web-app>
Now 'mvn package' and note that target/my-webapp-1.0-SNAPSHOT/WEB-INF/web.xml is not filtered.
If you add:
<filters>
<filter>src/main/filters/build.dev.properties</filter>
</filters>
to the build element, and add the build.dev.properties, and specify the project.name property, you do get successful filtering.
Attachments
Attachments
Issue Links
- is duplicated by
-
MWAR-43 Web resource filtering does not expand variables
- Closed