简体   繁体   English

osgi:捆绑包未激活

[英]osgi: Bundle is not active

just another question for my osgi project. 这是我的osgi项目的另一个问题。 I get this error code: 我收到此错误代码:

!SESSION 2015-10-26 10:50:01.671 ----------------------------------------------- eclipse.buildId=unknown java.version=1.8.0_60 java.vendor=Oracle Corporation BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=de_DE Command-line arguments: -dev file:C:/Users/Dennis/workspace/.metadata/.plugins/org.eclipse.pde.core/delicomFirstOSGIPlugin/dev.properties -os win32 -ws win32 -arch x86_64 -consoleLog -console !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文件: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 FrameworkEvent ERROR !STACK 0 org.osgi.framework.BundleException: Error loading bundle activator. !ENTRY de.delicom.testosgi 4 0 2015-10-26 10:50:02.318!MESSAGE FrameworkEvent错误!STACK 0 org.osgi.framework.BundleException:加载捆绑包激活器时出错。 at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:711) at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:941) at org.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) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) at org.eclipse.osgi.framework.eventmgr.EventManager.di 在org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:711)处在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),位于org.eclipse的org.eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.incStartLevel(ModuleContainer.java:1562)的org.eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.incStartLevel(ModuleContainer.java:1582)。 org.eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476)上的osgi.container.ModuleContainer $ ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1533) org.eclipse.osgi.framework.eventmgr.EventManager.di上的dispatchEvent(ModuleContainer.java:1) spatchEvent(EventManager.java:230) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) Caused by: java.lang.ClassNotFoundException: de.delicom.testosgi.Activator.java cannot be found by de.delicom.testosgi_1.0.0.qualifier at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:439) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:352) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:344) at org.eclipse.osgi.internal.framework.BundleContextImpl.loadBundleActivator(BundleContextImpl.java:754) at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:706) ... 11 more Root exception: java.lang.ClassNotFoundException: de.delicom.testosgi.Activator.java cannot be found by de.delicom.testosgi_1.0.0.qualifier at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:439) at org.eclipse.osgi.internal.loader.BundleLoade org.eclipse.osgi.framework.eventmgr.EventManager $ EventThread.run(EventManager.java:340)处的spatchEvent(EventManager.java:230)原因:java.lang.ClassNotFoundException:de.delicom.testosgi.Activator.java无法可以通过org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.org)上的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:344)的org.eclipse.osgi.internal.framework.BundleContextImpl.loadBundleActivator(BundleContextImpl.java:754)的java.352) .osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:706)...另有11个根异常:java.lang.ClassNotFoundException:de.delicom.testosgi.Activator.java无法由de.delicom.testosgi_1找到。 0.0.qualifier在org.eclipse.osgi.internal.loader.BundleLoade处的org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:439) r.findClass(BundleLoader.java:352) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:344) at org.eclipse.osgi.internal.framework.BundleContextImpl.loadBundleActivator(BundleContextImpl.java:754) at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:706) at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:941) at org.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) at org.eclipse.osgi.container.ModuleContain org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:344)的org.eclipse.osgi.internal.framework.BundleContextImpl.loadBundleActivator(BundleContextImpl.java:的r.findClass(BundleLoader.java:352) 754)在org.eclipse.osgi上的org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:706)在org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:941) org.eclipse.osgi.container.Module.doStart(Module.java:571)的.internal.framework.EquinoxBundle $ EquinoxModule.startWorker(EquinoxBundle.java:318)org.eclipse.osgi.container.Module.start(Module .java:439),位于org.eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.incStartLevel(ModuleContainer.java:1562),位于org.eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.incStartLevel(ModuleContainer.java:1582)。 org.eclipse.osgi.container.ModuleContain的eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1533) er$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476) at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) org.eclipse.osgi.container.ModuleContainer $ ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)上的er $ ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476)在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 0 2015-10-26 10:50:02.322 !MESSAGE Bundle de.delicom.testosgi_1.0.0.qualifier [11] is not active. !ENTRY org.eclipse.osgi 4 0 2015-10-26 10:50:02.322!MESSAGE捆绑包de.delicom.testosgi_1.0.0.qualifier [11]未激活。

My Manifest looks like: 我的清单看起来像:

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

The external jar's i've added to Buildpath and Classpath. 我已将外部jar添加到Buildpath和Classpath中。 They are also in the referenced libaries. 它们也在引用的库中。

Anyone have an idea? 有人有主意吗? Thank you 谢谢

>org.osgi.framework.BundleException: Error loading bundle activator this is typical run-time error if you forget define "bin/" (or "target/..") folder in your project: META-INF/MANIFEST.MF : > org.osgi.framework.BundleException:加载捆绑包激活器时出错,如果您忘记在项目中定义“ bin /”(或“ target / ..”)文件夹,则这是典型的运行时错误:META-INF / MANIFEST.MF:

Bundle-ClassPath: target/classes,  **<<<---- here is it !**
 libs/log4j-1.2.16.jar,
 libs/slf4j-api-1.6.0.jar,
 libs/slf4j-log4j12-1.6.0.jar,
 libs/commons-io-2.4.jar
Bundle-Activator: com.senatov.smapperApp.Activator

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM