![](/img/trans.png)
[英]“cannot be cast to org.osgi.framework.BundleActivator” when declaratively starting OSGi bundle
[英]ClassNotFoundException for org.osgi.framework.BundleActivator despite of Import-Package
我嘗試使用激活器運行一個非常簡單的OSGi“Hello World”風格的示例,然后再獲得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
很抱歉自己回答這個問題,但其他人可能會遇到類似的混亂問題。 發生的事情是,有一個第三方圖書館(在這種情況下是澤西島)需要我已經包含的更新版本的OSGi。 因此,該庫無法找到(正確版本)BundleActivator。
確保在最后一行之后有一個換行符
表現
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.