I just upgraded from 1.5alpha (built from CVS in mid-April) to the 1.5b2
release (downloaded the binary distribution).

When I did this, my unit test target stopped working -- all unit tests
reported the following exception:

    [junit] java.lang.VerifyError: (class:
org/apache/tools/ant/taskdefs/optional/junit/JUnitTestRunner$TeeOutputSt
ream, method: <init> signature:
(Lorg/apache/tools/ant/taskdefs/optional/junit/JUnitTestRunner;Lorg/apac
he/tools/ant/taskdefs/optional/junit/JUnitTestRunner$1;[Ljava/io/OutputS
?T#
    [junit]     at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTe
stRunner.java)
    [junit]     at
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitT
estRunner.java)
    [junit] Exception in thread "main" 

To explore further, I downloaded the source 1.5b2 distribution, and
looked into the JUnitTestRunner code.  I found what appeared to be the
problem lines (the only uses of TeeOutputStream) which were inside a "if
(forked)" test.  So, I re-tested with the fork parameter set to "no",
and it worked -- at least the unit tests worked, though the overall
process didn't since I want to have the fork attribute set to "yes".

So I rebuilt 1.5b2 to try hacking some stuff into JUnitTestRunner to try
and further isolate the cause -- and much to my surprise, a rebuilt
version of optional.jar did the trick.  I noticed that both ant.jar and
optional.jar that were built from the source distribution were different
sizes than those provided with the binary distribution (though they
appeared to have identical manifest files), so I am now using both jars
built from the source distribution.

Long way of saying -- everythings working fine now, but I'm concerned
that I had to rebuild the binaries from the release source.  Is this a
known issue?  Is it an issue, or did I install the binary improperly?

Thanks for any help,

PC

-------------

If it matters, here's the junit task from my build.xml:

    <junit printsummary="yes" showoutput="yes" dir="${test.conf.dir}"
fork="yes">
      <classpath>
        <path refid="test.class.path"/>
      </classpath>
      <formatter type="plain"/>
      <batchtest todir="${build.reports}">
        <fileset dir="${test.java.dir}">
          <include name="**/*Test.java"/>
        </fileset>
      </batchtest>
    </junit>


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to