【发布时间】:2012-08-06 11:42:06
【问题描述】:
运行 Pax Exam 时出现以下异常。我的配置仅包括来自文件系统和 junit 和 felix 的单个捆绑包。知道为什么会这样吗?
java.lang.IllegalStateException: Stream handler unavailable due to: null
at org.apache.felix.framework.URLHandlersStreamHandlerProxy.openConnection(URLHandlersStreamHandlerProxy.java:311)
at java.net.URL.openConnection(URL.java:945)
at org.apache.felix.framework.cache.JarRevision.initialize(JarRevision.java:155)
at org.apache.felix.framework.cache.JarRevision.<init>(JarRevision.java:82)
at org.apache.felix.framework.cache.JarRevision.<init>(JarRevision.java:60)
at org.apache.felix.framework.cache.BundleArchive.createRevisionFromLocation(BundleArchive.java:868)
at org.apache.felix.framework.cache.BundleArchive.reviseInternal(BundleArchive.java:549)
at org.apache.felix.framework.cache.BundleArchive.<init>(BundleArchive.java:148)
at org.apache.felix.framework.cache.BundleCache.create(BundleCache.java:251)
at org.apache.felix.framework.Felix.installBundle(Felix.java:2541)
at org.apache.felix.framework.Felix.installBundle(Felix.java:2501)
at org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:150)
at org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:123)
at org.ops4j.pax.exam.nat.internal.NativeTestContainer.installAndStartBundles(NativeTestContainer.java:319)
at org.ops4j.pax.exam.nat.internal.NativeTestContainer.start(NativeTestContainer.java:163)
at org.ops4j.pax.exam.spi.reactors.AllConfinedStagedReactor.invoke(AllConfinedStagedReactor.java:67)
at org.ops4j.pax.exam.junit.JUnit4TestRunner$2.evaluate(JUnit4TestRunner.java:284)
at org.ops4j.pax.exam.junit.JUnit4TestRunner.run(JUnit4TestRunner.java:93)
编辑:我正在使用 Pax Exam 2.5.0,以下是我的配置方法。
@Configuration
public Option[] config() {
return options(
bundle("file:/home/nufail/mybundle.jar"),
junitBundles(),
felix().version("3.2.2")
);
}
【问题讨论】:
-
如果没有看到您的代码,很难提供帮助。你能发一些吗?
-
需要更多信息:您使用的是哪个 Pax 考试版本?您正在使用带有 Felix 的 Native Container,您能否提供更多配置部分(@Configuration)?
-
@ToniMenzel 我已经更新了这个问题。顺便说一句,它说 feilx() 方法已被弃用。获取felix的新方法是什么?
标签: java testing osgi pax pax-exam