[ http://jira.codehaus.org/browse/MNG-2127?page=comments#action_60419 ]
Dan Fabulich commented on MNG-2127: ----------------------------------- Oops, sorry... it's not that it *always* fails with Emmanuel's workaround; the problem with mvn.bat right now is that if it ever fails, it sets the ERROR_CODE=1, (not the DOS official env var %ERRORLEVEL%, but an arbitrary env var) which means that the script will always fail from then on. I'm updating my mvnfixed.bat file with enhancements to make this go away. I've tested this on Windows 2003 and Windows NT, but not on Win9x. It works great everywhere I've tried it. Note that I've added this sneaky line to set the Windows errorlevel: "echo 1 | choice /c:12 /n >nul >2&1". I got this from here: http://www.robvanderwoude.com/index.html He claims this works on Win9x, but I don't have Win9x available. > mvn.bat always exits 0 on Windows 2000 and higher > ------------------------------------------------- > > Key: MNG-2127 > URL: http://jira.codehaus.org/browse/MNG-2127 > Project: Maven 2 > Type: Bug > Components: Command Line > Versions: 2.0, 2.0.1, 2.0.2 > Environment: I'm on Windows 2003 Server, but this will affect any OS for > which the %OS% environment variable is Windows_NT, including Windows XP and > Windows 2000. > Reporter: Dan Fabulich > Assignee: Brett Porter > Priority: Blocker > Fix For: 2.0.3 > Attachments: mvnfixed.bat > > > Write the following ant script and run it on Windows 2000 or higher: > <project default="main"><target name="main"><exec executable="mvn.bat" > failonerror="true" /></target></project> > This will run "mvn" with no arguments, which will always fail. But the ant > script will claim "build successful", because the exit value of mvn.bat was > 0. It is absolutely critical that this work correctly, or else I can't > integrate Maven into any other automated system. > This is happening because mvn.bat is improperly abusing local scoping. On > line 130 of mvn.bat, we execute maven, but we don't do anything with its exit > value... we just always goto end. The fix for this is to add a line 131 that > says "if errorlevel 1 goto error", which will behave correctly. > (I marked this as having a test case because I've included a test ant script, > but technically this isn't a JUnit test case, so it may be an inappropriate > use of the "testcase included" marker.) -- 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 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]