2015-08-24 70 views
4

我試着運行一個非常簡單的OSGi「Hello World」風格的示例,激活後一段時間又一次,並得到org.osgi.framework的Cla​​ssNotFoundException。 BundleActivator(請參閱下面的堆棧跟蹤)。org.osgi.framework.BundleActivator的ClassNotFoundException,儘管導入包

環境是基本的Equinox(org.eclipse.osgi_3.7.2 ...)。所有捆綁(除我之外)都是ACTIVE。我在清單中的「Import-Package」聲明中有「org.osgi.framework」,我可以在Eclipse中的包依賴關係中看到該類。

有人可以給我一個提示,試圖解決這個問題嗎?

親切的問候, 安德烈

Caused by: java.lang.ClassNotFoundException: org.osgi.framework.BundleActivator 
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:513) 
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429) 
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417) 
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 
... 30 more 
+0

PS的最後一行後換行:這個例子是這樣的:http://cumulocity.com/guides/java/hello-world-osgi/ –

+0

是所有的例外文本?你有沒有在Manifest中宣佈你的Activator類? (雖然我不認爲這是問題) – Kerry

+0

嘿克里,謝謝你的迴應。是的,激活者在清單中。由於完整的例外是如此之大,我把它放入pastebin,我希望沒關係:http://pastebin.com/iqPT1fuJ。乾杯,安德烈 –

回答

3

對不起,回答這個問題我自己,但其他人可能有類似困惑的問題。發生了什麼事情是有一個第三方庫(在這個例子中是澤西島)需要我包含的更新版本的OSGi。因此,該庫找不到(正確的版本)BundleActivator。

+1

在回答自己的問題時沒有問題,它有時會發生這種情況。 – Kerry

+0

您的意思是說您在pom.xml中添加了新版本的OSGi?我遇到了類似的錯誤,但我沒有修改OSGi版本,除非在pom中存在隱藏的依賴關係。 – ronnyfm

0

確保存在
清單

相關問題