我正在使用Apache骆驼(必须将它包含在KURA框架中以进行节流和其他一些用途),因此我遵循了this link。
我已经在KURA项目中提供了KuraRouter(来自jar文件)作为主类,而不是HelloOsgi和component.xml文件中的主类,在该类中将启动和停止功能作为Activate和Deactivate方法。但是当我运行它时,它将显示以下错误!信息
Exception occurred while creating new instance of component Component[
name = org.apache.camel.component.kura.KuraRouter
activate = start
deactivate = stop
modified =
configuration-policy = optional
factory = null
autoenable = true
immediate = true
implementation = org.apache.camel.component.kura.KuraRouter
state = Unsatisfied
properties =
serviceFactory = false
serviceInterface = null
references = null
located in bundle = org.eclipse.kura.example.hello_osgi_1.0.0.qualifier [20]
]
!STACK 0
java.lang.ClassNotFoundException: org.apache.camel.component.kura.KuraRouter
我在库拉(Kura)的骆驼配置是否错误,是否有任何适当的步骤。
Manifest.MF文件是
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Hello world Example With Logger
Bundle-SymbolicName: org.eclipse.kura.example.hello_osgi
Bundle-Version: 1.0.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Bundle-ClassPath: .,/junit.jar,
camel-core-2.15.2.jar,
camel-core-osgi-2.15.2.jar,
org.osgi.core-4.3.0.jar,
slf4j-api-1.6.1.jar,
camel-kura-2.15.2.jar,
commons-management-1.0.jar,
apache-activemq-4.1.1.jar
Import-Package: org.eclipse.kura.core.configuration;version="0.2.0",
org.json,
org.osgi.service.component;version="1.2.0",
org.slf4j;version="1.6.4",
org.osgi.framework;version="1.3.0"
Service-Component: component.xml
并且component.xml文件是
<?xml version="1.0" encoding="UTF-8"?>
<scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0" activate="start" deactivate="stop" enabled="true" immediate="true" name="org.apache.camel.component.kura.KuraRouter">
<implementation class="org.apache.camel.component.kura.KuraRouter"/>
</scr:component>
最佳答案
启动Kura Camel项目的最佳方法是使用此[1]快速入门。更多细节可以在这里找到[2]。
如有任何问题,请随时与我联系。 :)
[1] https://github.com/rhiot/quickstarts/tree/master/kura-camel
[2] https://rhiot.gitbooks.io/rhiotdocumentation/content/quickstarts/kura_camel_quickstart.html