You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Anders Olsson (JIRA)" <ji...@codehaus.org> on 2009/12/29 13:45:55 UTC
[jira] Commented: (MRESOURCES-81) 2.3 escapes characters when
filtering properties
[ http://jira.codehaus.org/browse/MRESOURCES-81?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=204405#action_204405 ]
Anders Olsson commented on MRESOURCES-81:
-----------------------------------------
I agree with Jason above and escapeWindowsPaths seems like a very backward solution to me.
Introducing this change does fix the special case that window paths happen to contain characters that need to be escaped in a certain way if they are later to be interpreted in a certain way. But this breaks existing projects using window paths, which happened to me using xml files.
A cleaner, more complete and backwards compatible fix would be to add optional escaping and providing common schemes as Jason suggests.
> 2.3 escapes characters when filtering properties
> ------------------------------------------------
>
> Key: MRESOURCES-81
> URL: http://jira.codehaus.org/browse/MRESOURCES-81
> Project: Maven 2.x Resources Plugin
> Issue Type: Bug
> Affects Versions: 2.3
> Environment: Windows
> Reporter: Paul Jackson
> Assignee: John Casey
> Fix For: 2.4
>
>
> When filtering a property additional escaping characters are inserted into the replacement text. Here's an example pom snippett:
> <profiles>
> <profile>
> <id>Automated-Testing-Windows</id>
> <properties>
> <server.resource.type>nt</server.resource.type>
> <server.remote.base.dir>D:\\AutomatedTesting</server.remote.base.dir>
> <server.remote.temp.dir>${server.remote.base.dir}\\temp</server.remote.temp.dir>
> </properties>
> </profile>
> <build>
> <resources>
> <resource>
> <directory>src/main/resources/${server.resource.type}</directory>
> <filtering>true</filtering>
> </resource>
> </resources>
> <resources>
> <plugins>
> <plugin>
> <artifactId>maven-resources-plugin</artifactId>
> <version>2.3</version>
> <executions>
> <execution>
> <id>resources</id>
> <phase>process-resources</phase>
> <goals>
> <goal>resources</goal>
> </goals>
> <configuration>
> <outputDirectory>${project.build.directory}/resources</outputDirectory>
> <includeEmptyDirectories>true</includeEmptyDirectories>
> </configuration>
> </execution>
> </executions>
> </plugin>
> </plugins>
> </build>
> and the following line of text in a file in src\main\resources\nt
> cd /d ${server.remote.temp.dir}
> Resources plug in version 2.2 filters this property as follows:
> cd /d D:\\AutomatedTesting\\temp
> Resources plug in version 2.3 filters this property differently:
> cd /d D\:\\\\AutomatedTesting\\\\temp
> Notice the extra backslashes inserted before each backslash (minor issue) and colon (major issue). Is there a way to prevent maven from inserting these escape characters?
>
> I also checked out 2.4-SNAPSHOT revision 732027 and observed the same behavior.
> Thanks,
> -Paul
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira