【发布时间】:2013-12-04 10:16:12
【问题描述】:
我的单元测试生成了非常好的 Cobertura 代码覆盖率报告。但是,在从 Java 1.6 升级到 Java 1.7 并使用 Cobertura 2.0.3 时,我开始收到以下错误。我调查了this Cobertura Mailing list entry 关于类路径问题、Java 7、升级版本和检测,但我仍然遇到问题。有什么建议吗?
[testng] Exception in thread "Thread-1" java.lang.ExceptionInInitializerError
[testng] at org.my.code.MyFile.__cobertura_init(MyFile.java)
[testng] at org.my.code.MyFile.<clinit>(MyFile.java)
[testng] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[testng] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[testng] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[testng] at java.lang.reflect.Method.invoke(Method.java:601)
[testng] at net.sourceforge.cobertura.coveragedata.TouchCollector.applyTouchesToSingleClassOnProjectData(TouchCollector.java:121)
[testng] at net.sourceforge.cobertura.coveragedata.TouchCollector.applyTouchesOnProjectData(TouchCollector.java:107)
[testng] at net.sourceforge.cobertura.coveragedata.ProjectData.saveGlobalProjectData(ProjectData.java:272)
[testng] at net.sourceforge.cobertura.coveragedata.SaveTimer.run(SaveTimer.java:33)
[testng] at java.lang.Thread.run(Thread.java:722)
[testng] Caused by: java.lang.IllegalStateException: Shutdown in progress
[testng] at java.lang.ApplicationShutdownHooks.add(ApplicationShutdownHooks.java:66)
[testng] at java.lang.Runtime.addShutdownHook(Runtime.java:209)
[testng] at net.sourceforge.cobertura.coveragedata.ProjectData.initialize(ProjectData.java:239)
[testng] at net.sourceforge.cobertura.coveragedata.ProjectData.getGlobalProjectData(ProjectData.java:209)
[testng] at net.sourceforge.cobertura.coveragedata.TouchCollector.<clinit>(TouchCollector.java:46)
[testng] ... 11 more
cb.html:
[cobertura-report] The jvmargs attribute is deprecated. Please use nested jvmarg elements.
【问题讨论】: