maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christian Schulte (JIRA)" <>
Subject [jira] [Commented] (MRESOURCES-230) Can't escape the escape string
Date Mon, 05 Dec 2016 11:26:58 GMT


Christian Schulte commented on MRESOURCES-230:

It is not possible to fix this without breaking backwards compatibility. For example: Properties
resources use the backslash themselves for escaping. They rely on filtering to preserve any
escape not specific to maven. IN = '\\' must lead to OUT = '\\' for those resources. If an
update makes it OUT = '\', those resources are broken after filtering. That's why it has been
done intentionally. Only escape what is known to maven filtering - leave the rest as is. Solution
is to use an escape string (that's a string not only a single character) not conflicting with
anything else in the file. For example: You could set the escape string to {{ยงยงยง}} or something
unlikely to conflict with anything in the file.

> Can't escape the escape string
> ------------------------------
>                 Key: MRESOURCES-230
>                 URL:
>             Project: Maven Resources Plugin
>          Issue Type: Bug
>          Components: escape string
>    Affects Versions: 3.0.1
>            Reporter: Thomas Mortagne
>            Priority: Critical
> I have the following use case in a XML file:
> {code:xml}
>     <variable name="xwikiDataDir" value="%APPDATA%\XWiki\${project.version}\data"
> {code}
> Before 3.0 it used to produce
> {code:xml}
>     <variable name="xwikiDataDir" value="%APPDATA%\XWiki\8.2\data" condition="windowsSevenAndGreater"/>
> {code}
> \ is now the default escape character, I'm fine with that but then it should be possible
to escape the escape string which is buggy right now.
> The following source
> {code:xml}
>     <variable name="xwikiDataDir" value="%APPDATA%\XWiki\\${project.version}\data"
> {code}
> gives me
> {code:xml}
>     <variable name="xwikiDataDir" value="%APPDATA%\\XWiki\8.2\data" condition="windowsSevenAndGreater"/>
> {code}
> Notice the still doubled \. The first one should be removed from the result.
> I tried escapeWindowsPaths bu it does not seems to be matching my string as a Windows
path which is probably another bug.
> Since I can't find any way to disable escaping (see MRESOURCES-231),
> I ended up finding a character I don't have in my file and set it as escapeString.

This message was sent by Atlassian JIRA

View raw message