You need to enable JavaScript to run this app. Opendaylight Karaf安装boot特征报错org.apache.felix.cm.json缺失如何解决
优惠活动
大模型
产品
解决方案
定价
更多

Opendaylight Karaf安装boot特征报错org.apache.felix.cm.json缺失如何解决

Karaf启动org.apache.felix.cm.json缺失报错修复方案

你定位的根因正确,该报错是Karaf 4.3.2版本依赖的org.apache.felix.cm.json包未被正确纳入OSGi运行时解析范围导致,手动添加jar不生效是因为未满足OSGi的bundle注册规则,也没有对齐整个Karaf feature的依赖链,可按以下步骤修复:

  • 第一步:在项目的dependencyManagement节点中引入匹配版本的依赖,严格使用1.0.x版本(报错明确要求版本范围为>=1.0.0且<2.0.0):
<dependency>
    <groupId>org.apache.felix</groupId>
    <artifactId>org.apache.felix.cm.json</artifactId>
    <version>1.0.6</version>
</dependency>
  • 第二步:修改项目中自定义Karaf feature的xml配置文件,将org.apache.felix.cm.json明确加入自定义feature的依赖列表,同时校验standard feature的版本和项目引入的Karaf核心版本完全一致,避免版本不匹配。
  • 第三步:清理之前手动放入Karaf deploy目录的jar包,执行mvn clean install重新构建全量项目,启动Karaf前清空其data目录,消除旧缓存对依赖解析的影响。
  • 第四步:如上述步骤未解决问题,可临时修改Karaf的etc/org.apache.karaf.features.cfg配置文件,在featuresRepositories配置项中补充Felix官方仓库,同时在featuresBoot配置项中添加org.apache.felix.cm.json/1.0.6,确保该bundle在standard feature之前加载。

注意:OpenDaylight Nemo仓库已停止维护多年,原生适配的Karaf版本远低于4.3.2,你修改代码时很可能引入了过高版本的Karaf核心依赖才触发该兼容问题。如果上述修复无效,建议将Karaf版本降级到4.2.x系列,对应版本的pax-url-wrap会自动匹配符合要求的felix cm.json包。

内容的提问来源于stack exchange,提问作者Pierangelo Martellone

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.14 07:36:02