我正在尝试将我的OSGi包部署到Karaf中。使用link_to 'Person', @person
命令部署捆绑包时,请收到以下错误消息:
bundle:install
以下是Caused by: org.osgi.framework.BundleException: Bundle symbolic name and version are not unique: servicebus:5.2.1.SNAPSHOT
at org.apache.felix.framework.BundleImpl.createRevision(BundleImpl.java:1305)[org.apache.felix.framework-4.4.1.jar:]
at org.apache.felix.framework.BundleImpl.<init>(BundleImpl.java:112)[org.apache.felix.framework-4.4.1.jar:]
at org.apache.felix.framework.Felix.installBundle(Felix.java:2907)[org.apache.felix.framework-4.4.1.jar:]
at org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:165)[org.apache.felix.framework-4.4.1.jar:]
at org.apache.karaf.bundle.command.Install.execute(Install.java:77)[63:org.apache.karaf.bundle.core:4.0.0.M2]
... 11 more
中定义的属性:
pom.xml
我将捆绑符号名称定义为<groupId>com.google.process</groupId>
<artifactId>processCheck</artifactId>
<packaging>bundle</packaging>
<version>5.2.1-SNAPSHOT</version>
:
servicebus
您能否帮我解决这个问题。
答案 0 :(得分:1)
可能它已经安装在Karaf的缓存中。尝试删除$karaf.home/data
文件夹并重新安装。
答案 1 :(得分:0)
尝试通过
查明它是否已安装la | grep -i "servicebus"
如果已安装,只需发出
bundle:update <id>
其中id是第一个命令找到的id。 如果找不到捆绑,就像Jorge Martinez已经说过的那样。 删除数据文件夹。 您也可以使用shell命令(如果您没有使用Windows;))
system:shutdown -r -cc
其中-cc代表clean cache目录,如果你想确保清除完整的数据文件夹(包括日志)
system:shutdown -r -ca