[ http://jira.codehaus.org/browse/SCM-386?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Brett Porter moved MNG-3357 to SCM-386: --------------------------------------- Component/s: (was: Plugins and Lifecycle) maven-plugin Key: SCM-386 (was: MNG-3357) Project: Maven SCM (was: Maven 2) > SCM plugin fails on "bootstrap" goal when shell environment has functions > definitions > ------------------------------------------------------------------------------------- > > Key: SCM-386 > URL: http://jira.codehaus.org/browse/SCM-386 > Project: Maven SCM > Issue Type: Bug > Components: maven-plugin > Reporter: LEONID ILYEVSKY > > When using scm:bootstrap, with goals to do after checkout: > mvn -Dgoals=compile scm:bootstrap > maven apparently spawns another process that will execute mvn command for > that goal. To set up the environment for the child process, it runs external > command (in case of Linux it is "env"), and tries to parse it, assuming that > every line of the output has "KEY=VALUE" format. However, when the > environment has shell functions in it, this logic fails. > I see two ways of fixing this. > 1. Just fix the parsing logic. > Pros: this will be compatible with everything it is compatible today. > Cons: parsing logic will be essentially more complex, because you need to > figure out multiline functions definitions. > 2. Use System.getEnv() to get the environment, make array of strings > containing "KEY=VALUE" expressions, and use it for the child process. > Pros: very clean and simple solution. I actually tested it, took 10 minutes > to do. > Cons: System.getEnv() became available as of JDK 1.5. Seems like all Maven2 > is supposed to be compatible with JDK 1.4, this might be a problem. -- 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