\ -> / on Unix for java.io.File-typed mojo param ------------------------------------------------
Key: MNG-5035 URL: http://jira.codehaus.org/browse/MNG-5035 Project: Maven 2 & 3 Issue Type: Bug Components: Plugin API Affects Versions: 3.0.3 Environment: Ubuntu 10.04, JDK 6 Reporter: Jesse Glick I created a file {{/tmp/a\b/c}} (note backslash). I created a quickstart app with {noformat} public static void main( String[] args ) { System.out.println( System.getProperty("user.dir") ); System.out.println(Arrays.toString(new File("").listFiles())); } {noformat} and then run it with {noformat} mvn -Dexec.workingdir=/tmp/a\\b "-Dexec.args=-classpath %classpath ....App" -Dexec.executable=.../java process-classes org.codehaus.mojo:exec-maven-plugin:1.2:exec -X {noformat} I see {noformat} [DEBUG] Configuring mojo 'org.codehaus.mojo:exec-maven-plugin:1.2:exec' with basic configurator --> [DEBUG] (f) workingDirectory = /tmp/a/b [DEBUG] Making working directory '/tmp/a/b'. /tmp/a/b null {noformat} where I expected to see {noformat} [DEBUG] Configuring mojo 'org.codehaus.mojo:exec-maven-plugin:1.2:exec' with basic configurator --> [DEBUG] (f) workingDirectory = /tmp/a\b /tmp/a\b [/tmp/a\b/c] {noformat} I believe the guilty code is in {{org.codehaus.plexus.component.configurator.converters.basic.FileConverter}}: {noformat} new File( str.replace( '\\', File.separatorChar ).replace( '/', File.separatorChar ) ) {noformat} should probably replace only / with \ and only on Windows. Not sure what compatibility regressions there might be, if some POM written by a Windows developer uses \ as the separator character for relative paths. -- 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