[ http://jira.codehaus.org/browse/MNG-3296?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vincent Siveton updated MNG-3296: --------------------------------- Fix Version/s: 2.1-alpha-1 2.0.9 > mvn.bat looses error code on windows NT type platforms > ------------------------------------------------------ > > Key: MNG-3296 > URL: http://jira.codehaus.org/browse/MNG-3296 > Project: Maven 2 > Issue Type: Bug > Components: Command Line > Affects Versions: 2.0.7 > Reporter: Matthias Kerkhoff > Fix For: 2.0.9, 2.1-alpha-1 > > > There is a bug in the mvn.bat script that prevents that an error code is > properly returned to the caller of the script. > The batch script executes the following lines after maven has been invoked if > an error occurs: > if ERRORLEVEL 1 goto error > :error > set ERROR_CODE=1 > :end > if "%OS%"=="Windows_NT" goto endNT > :endNT > @endlocal > if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat" > if "%MAVEN_BATCH_PAUSE%" == "on" pause > if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE% > exit /B %ERROR_CODE% > The problem is the endlocal statement. Calling endlocal ends the scope in > which ERROR_CODE was set to 1. The previous value of ERROR_CODE will be > reinstantiated (which is always 0, see line 46). > To fix the problem make the ERROR_CODE value known in the outer ("global") > scope by changing the endlocal statement into > @endlocal & set ERROR_CODE=%ERROR_CODE% -- 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