我遇到了karaf / osgi的问题,当我尝试启动karaf时,我的一些功能循环启动和关闭。这是一个日志示例:
2017-09-05 15:46:03,344 | INFO | rint Extender: 1 | L3vpnProvider | 224 - l3vpn-feature-impl - 0.1.0.SNAPSHOT | L3vpnProvider Session Initiated
2017-09-05 15:46:03,346 | INFO | rint Extender: 2 | L3vpnDataChangeListenerSR | 171 - org.temp.l3vpn-impl - 0.1.0.SNAPSHOT | Service Request Data Listener created
2017-09-05 15:46:03,349 | INFO | ntAdminThread #7 | BlueprintBundleTracker | 144 - org.opendaylight.controller.blueprint - 0.5.3.Boron-SR3 | Blueprint container for bundle org.temp.l3vpn-feature-impl_0.1.0.SNAPSHOT [224] was successfully created
2017-09-05 15:46:03,353 | INFO | Thread-193 | L3vpnProvider | 224 -l3vpn-feature-impl - 0.1.0.SNAPSHOT | L3vpnProvider Closed
它从字面上循环而不会停止。我发现的唯一解决方案是不断重建,直到它开始没有复杂情况。
以下是feature.xml文件中的功能,用于说明其设置方式。
<feature name='odl-l3vpn-feature-impl' version='${project.version}' description='OpenDaylight :: l3vpn :: Network Model :: Impl'>
<feature version='${mdsal.version}'>odl-mdsal-broker</feature>
<feature version='${project.version}'>odl-l3vpn-network-model</feature>
<feature version='${project.version}'>odl-l3vpn</feature>
<bundle>mvn:org.temp/l3vpn-nc-impl/{{VERSION}}</bundle>
<lots of other bundles being wrapped>
</feature>
还有一个额外的功能,但它有一个非常类似的结构,所以我不会把它放在那里除非需要它。
我只是因为可能导致这种情况发生的原因而感到茫然。有什么想法吗?
我已经尝试做的是让odl-mdsal-broker将先决条件或依赖元素设置为true,以确保过早启动捆绑包没有问题但是没有运气接着就,随即。任何帮助将不胜感激。
答案 0 :(得分:0)
对于任何可能遇到同样问题的人。这是因为启动错误,蓝图xml中的两个功能都具有相同的配置文件,因此在启动时他们感到困惑,导致启动循环。重命名其中一个配置文件并在blueprint.xml中更新后,解决了这个问题。