【问题标题】:ant target for junitjunit的蚂蚁目标
【发布时间】:2011-05-20 08:43:04
【问题描述】:

我有 Suite.java 文件:

public class EshopServiceTestSuite extends TestSuite {

    public static Test suite() {
        TestSuite suite = new TestSuite();
        suite.addTestSuite(ImpactActionTypeTest.class);
        suite.addTestSuite(ProductServiceTest.class);
        return suite;
    }
    public static void main(String[] args) {
         TestRunner.run(EshopServiceTestSuite .class);
    }

}

ImpactActionTypeTest.java 文件扩展了 TestCase 它工作正常。但是 ProductServiceTest.java

扩展 ESWTestCase,实习生扩展了 TestCase,这会导致 junit atrget 失败。

<error type="java.lang.reflect.InvocationTargetException">java.lang.reflect.InvocationTargetException
Caused by: java.lang.ExceptionInInitializerError
    at org.apache.log4j.Logger.getLogger(Logger.java:94)
    at com.bgc.ecm.core.test.ElNinoAbstractTestCase.&lt;clinit&gt;(ElNinoAbstractTestCase.java:62)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
    at com.bgc.EshopServiceTestSuite.suite(EshopServiceTestSuite.java:41)
Caused by: sun.misc.InvalidJarIndexException: Invalid index
    at sun.misc.URLClassPath$JarLoader.getResource(URLClassPath.java:769)
    .....

</error>
  <system-out><![CDATA[]]></system-out>
  <system-err><![CDATA[log4j:WARN Caught Exception while in Loader.getResource. This may be innocuous.
sun.misc.InvalidJarIndexException: Invalid index

EshopServiceTestSuite.java:41 有代码 suite.addTestSuite(ProductServiceTest.class); Log4j 被称为:

- C:\build_libs\ESW\junit-3.8.1.jar
- C:\build_libs\ESW\log4j-1.2.15.jar
- C:\build_libs\ESW\log4j-1.2.8.jar
- C:\build_libs\ESW\mailapi.jar

为什么会出现这个异常?

【问题讨论】:

标签: java ant junit


【解决方案1】:

看起来类加载器正在某个 jar 中寻找类文件但找不到。

正如您所说的 .java 文件 - 请仔细检查所有文件是否已编译并添加到 jar 文件中。

刚刚看到 log4j 中发生了异常 - 在执行测试时仔细检查 log4j.jar 是否在类路径中。

【讨论】:

  • - C:\build_libs\ESW\log4j-1.2.15.jar - C:\build_libs\ESW\log4j-1.2.8.jar log4j 被引用。
  • @akb 你应该只引用一个版本的 log4j,这可能是错误的原因
【解决方案2】:

检查您的 jar/其中一个 jar 是否包含索引文件 (META_INF/INDEX.LIST)。如果是,请查看它,它可能包含无效的索引条目。

这是一篇关于您的异常的文章:Why does InvalidJarIndexException occur?

【讨论】:

    猜你喜欢
    • 2014-07-11
    • 1970-01-01
    • 1970-01-01
    • 2020-06-07
    • 2012-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多