当从jar运行junit并获取classnotfound异常时,zipfileset不适用于batchtest

时间:2014-07-15 12:23:23

标签: ant junit

我试图在ant下的junit任务中的一个jar(test.jar)中运行Junit测试用例。

我得到了classnotfound异常。

<formatter type="xml" />
            <batchtest fork="yes" todir="${test.report.dir}">
                <zipfileset src="${rootdir}/test.jar" includes="**/AllGUITestSuite.class" />
            <!--    <fileset dir="${build.test.classes}">
                    <include name="**/AllGUITestSuite.class" />
                </fileset> -->
    </batchtest>

我得到以下异常 我正在使用ant 1.8.2版本。异常是java.lang.ClassNotFoundException:com.naveen.guitest.TestSuite     在java.net.URLClassLoader $ 1.run(URLClassLoader.java:366)     在java.net.URLClassLoader $ 1.run(URLClassLoader.java:355)     at java.security.AccessController.doPrivileged(Native Method)     在java.net.URLClassLoader.findClass(URLClassLoader.java:354)     at java.lang.ClassLoader.loadClass(ClassLoader.java:423)     at sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:308)     at java.lang.ClassLoader.loadClass(ClassLoader.java:356)     at java.lang.Class.forName0(Native Method)     在java.lang.Class.forName(Class.java:186)

1 个答案:

答案 0 :(得分:0)

鉴于该问题已有4年之久,我不知道它是否仍然有意义。

无论如何,您似乎需要定义类路径。 如果缺少的类在您的jar中,请尝试将classpath设置为test.jar本身,如下所示:

<classpath>
  <fileset dir="${rootdir}" includes="test.jar"/>
</classpath>