Dan -

Do you know if that bug was introduced in 2.0.7 (or some other earlier
release)?  My team is using 2.0.4 and we encountered a problem with the
classpath ordering recently that caused builds to that were previously
working to suddenly start failing.

Thanks,

Ken

On 2/15/08, Dan Fabulich <[EMAIL PROTECTED]> wrote:
>
> Ben Lidgey wrote:
>
> > We are running tests using Surefire 2.4.1 and Maven 2.0.8.
> [...]
>
> > Looking at the debug output shows:
> >
> > [DEBUG] Test Classpath :
> > [DEBUG]   C:\Documents and
> Settings\benl\.m2\repository\junit\junit\4.2\junit-4.2.jar
> >
> > [more jars]
> >
> > [DEBUG]   c:\Development\Projects\MyProject\target\classes
> > [DEBUG]   c:\Development\Projects\MyProject\target\test-classes
> >
> > Which would explain it. Is there anyway to get the test-classes before
> > classes in the classpath order? Setting childDelegation to true doesn't.
>
> I'm not 100% certain you're using the software you think you're using;
> here's some debugging/analysis tips.
>
> Take a look at http://jira.codehaus.org/browse/MNG-3118.  That bug was
> fixed in Maven 2.0.8 and called out in the release announcement as a
> backwards compatibility risk:
>
> http://www.mail-archive.com/[EMAIL PROTECTED]/msg00432.html
>
> As noted in MNG-3118, Surefire 2.3 had a bizarre classpath ordering bug
> that made the test classpath appear to be correct (test-classes first)
> under Maven 2.0.7 for some users with large classpaths:
>
> http://jira.codehaus.org/browse/SUREFIRE-61
>
> SUREFIRE-61 was fixed in Surefire 2.3.1.  Notably, it would make the "Test
> Classpath" output in -X look correct, while secretly under the hood it
> would munge the classpath incorrectly!
>
> As a result, for at least one project here at my work, we've seen:
>
> Maven 2.0.7 + Surefire 2.3: test-classes before classes
> Maven 2.0.8 + Surefire 2.3: classes before test-classes
> Maven 2.0.7 + Surefire 2.3.1 or higher: classes before test-classes
> Maven 2.0.8 + Surefire 2.3.1 or higher: test-classes before classes
>
> Benjamin checked in a classpath ordering test in the Surefire trunk that
> we now run with every release.  It's currently passing for me with
> Surefire 2.4.1 (and 2.4.2-SNAPSHOT) and Maven 2.0.8, and failing with
> Maven 2.0.7.
>
> Finally, note that your "real" classpath is being output in your
> target/surefire-reports/*.xml files as the "surefire.test.classpath"
> property; that may be useful for debugging purposes.
>
> -Dan
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

Reply via email to