只是我的osgi項目的另一個問題。我得到這個錯誤代碼:osgi:Bundle不活躍
!SESSION 2015-10-26 10:50:01.671 ------------------------- ---------------------- eclipse.buildId = unknown java.version = 1.8.0_60 java.vendor = Oracle Corporation BootLoader常量:OS = win32,ARCH = x86_64,WS = win32, NL = de_DE命令行參數:-dev file:C:/Users/Dennis/workspace/.metadata/.plugins/org.eclipse.pde.core/delicomFirstOSGIPlugin/dev.properties - os win32 -ws win32 -arch x86_64 -consoleLog -console
!ENTRY de.delicom.testosgi 4 0 2015-10-26 10:50:02.318!MESSAGE Framew orkEvent錯誤!堆棧0 org.osgi.framework.BundleException: 加載bundle激活器時出錯。在 org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:711) 在 org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:941) 在 有機eclipse.osgi.internal.framework.EquinoxBundle $ EquinoxModule.startWorker(EquinoxBundle.java:318) at org.eclipse.osgi.container.Module.doStart(Module.java:571)at org.eclipse.osgi.container。 Module.start(Module.java:439)at org.eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.incStartLevel(ModuleContainer.java:1582) at org.eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.incStartLevel(ModuleContainer .java:1562) at org.eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1533) 在 org.eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476) 在 org.eclipse .osgi.container.ModuleContainer $ ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) 在 org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) 在 org.eclipse.osgi.framework .eventmgr.EventManager $ EventThread.run(EventManager.java:340) 由:java.lang.ClassNotFoundException引起: de.delicom.testosgi.Activator.java無法通過 找到de.delicom.testosgi_1.0.0.qual ifier在 org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:439) 在 org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:352) 在 有機.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:344) 在 org.eclipse.osgi.internal.framework.BundleContextImpl.loadBundleActivator(BundleContextImpl.java:754) 在 org.eclipse.osgi .internal.framework.BundleContextImpl.start(BundleContextImpl.java:706) ... 11更多Root異常:java.lang.ClassNotFoundException: de.delicom.testosgi.Activator.java無法通過 找到de.delicom.testosgi_1 .0.0.qualifier在 org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:439) 在 org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:352) 在 org.eclipse .osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:344) 在 org.eclipse.osgi.internal.framework.BundleContextImpl.loadBundleActivator(BundleContextImpl.java:754) 在 org.eclipse.osgi.internal .framework.BundleContextImpl。啓動(BundleContextImpl.java:706) 在 org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:941) 在 org.eclipse.osgi.internal.framework.EquinoxBundle $ EquinoxModule.startWorker( EquinoxBundle.java:318) 在org.eclipse.osgi.container.Module.doStart(Module.java:571)維持在 組織 org.eclipse.osgi.container.Module.start(Module.java:439)。 eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.incStartLevel(ModuleContainer.java:1582) 在 org.eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.incStartLevel(ModuleContainer.java:1562) 在 org.eclipse.osgi。 container.ModuleContainer $ ContainerStartLevel.doContainerSta rtLevel(ModuleContainer.java:1533) 在 org.eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476) 在 org.eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.dispatchEvent(ModuleContainer。 java的:1) 在 org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) 在 org.eclipse.osgi.framework.eventmgr.EventManager $ EventThread.run(EventManager.java: 340)
!ENTRY org.eclipse.osgi 4 2015-10-26 10:50:02.322!MESSAGE Bundle de.delicom.testosgi_1.0.0.qualifier [11]未激活。
我的清單看起來像:
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Testosgi
Bundle-SymbolicName: de.delicom.testosgi
Bundle-Version: 1.0.0.qualifier
Bundle-Activator: de.delicom.testosgi.Activator
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Import-Package: org.osgi.framework;version="1.3.0"
Bundle-ClassPath: . ,
soapui-4.0.1.0.jar,
xmlbeans-2.6.0.jar,
xmlbeans-xpath-2.6.0.jar,
src/
Bundle-ActivationPolicy: lazy
外部罐子是我加入的Buildpath和classpath。它們也在參考庫中。
任何人有想法?謝謝
「拋出java.lang.ClassNotFoundException:de.delicom.testosgi.Activator.java」 爲什麼會說 「的.java」 在那裏?應該只是一個類名。您的清單看起來沒問題。也許舊版本仍然部署/緩存? – Thilo
這是我第一次安裝osgi。我還得到了一個「java.lang.IllegalStateException:工作臺尚未創建。」錯誤。你知道那裏發生了什麼嗎? 我不知道爲什麼在那裏有「.java」。 – creative235
搜索「Activator.java」的所有文件。 – Thilo