[ 
https://issues.apache.org/jira/browse/ARCHETYPE-492?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oliver Dungey updated ARCHETYPE-492:
------------------------------------
    Description: 
If you have a file in a project with an underscore adjacent to a substitution 
variable, the substitution will fail i.e.

if {{artifactId}} is 'Test' and a target file is to be named 
{{something_test.txt}} the file in the template should be named 
{{something____artifactId__.txt}} (3 underscores in the middle) but the result 
is an error stating that the property {{_artifactId}} cannot be found. This is 
because the term inside the regex is a greedy .*  - a simple fix would be to 
change this to something like {{ __[^_]*___ }} which would only match 
non-underscore characters.

Fixing this issue would allow the use of underscores in filenames in all 
circumstances rather than the current situation where you may get lucky. The 
only down side to fixing this issue is that properties with leading or trailing 
underscores will not be valid - this seems a far more preferable situation.

A patch for this issue was put on this bug back in 01//2009 but somehow got 
ignored - see [~maslovalex] patch and comments at the end of this issue: 
https://issues.apache.org/jira/browse/ARCHETYPE-191

Apologies for the formatting - it appears double underscores are an issue :-)

  was:
If you have a file in a project with an underscore adjacent to a substitution 
variable, the substitution will fail i.e.

if {{artifactId}} is 'Test' and a target file is to be named 
{{something_test.txt}} the file in the template should be named 
{{something____artifactId__.txt}} (3 underscores in the middle) but the result 
is an error stating that the property {{_artifactId}} cannot be found. This is 
because the term inside the regex is a greedy .*  - a simple fix would be to 
change this to something like __[^_]*___ which would only match non-underscore 
characters.

Fixing this issue would allow the use of underscores in filenames in all 
circumstances rather than the current situation where you may get lucky. The 
only down side to fixing this issue is that properties with leading or trailing 
underscores will not be valid - this seems a far more preferable situation.

A patch for this issue was put on this bug back in 01//2009 but somehow got 
ignored - see [~maslovalex] patch and comments at the end of this issue: 
https://issues.apache.org/jira/browse/ARCHETYPE-191

Apologies for the formatting - it appears double underscores are an issue :-)


> Underscore in filenames problematic due to greedy regex
> -------------------------------------------------------
>
>                 Key: ARCHETYPE-492
>                 URL: https://issues.apache.org/jira/browse/ARCHETYPE-492
>             Project: Maven Archetype
>          Issue Type: Bug
>          Components: Plugin
>    Affects Versions: 2.4
>         Environment: Windows 7, Sun JDK
>            Reporter: Oliver Dungey
>
> If you have a file in a project with an underscore adjacent to a substitution 
> variable, the substitution will fail i.e.
> if {{artifactId}} is 'Test' and a target file is to be named 
> {{something_test.txt}} the file in the template should be named 
> {{something____artifactId__.txt}} (3 underscores in the middle) but the 
> result is an error stating that the property {{_artifactId}} cannot be found. 
> This is because the term inside the regex is a greedy .*  - a simple fix 
> would be to change this to something like {{ __[^_]*___ }} which would only 
> match non-underscore characters.
> Fixing this issue would allow the use of underscores in filenames in all 
> circumstances rather than the current situation where you may get lucky. The 
> only down side to fixing this issue is that properties with leading or 
> trailing underscores will not be valid - this seems a far more preferable 
> situation.
> A patch for this issue was put on this bug back in 01//2009 but somehow got 
> ignored - see [~maslovalex] patch and comments at the end of this issue: 
> https://issues.apache.org/jira/browse/ARCHETYPE-191
> Apologies for the formatting - it appears double underscores are an issue :-)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to