gpt4 book ai didi

osgi - 如果我必须手动在其中安装 bundle ,features.xml 有什么意义?

转载 作者:行者123 更新时间:2023-12-01 12:24:55 25 4
gpt4 key购买 nike

我有一个 features.xml,其中列出了一些包。但显然它们都需要安装。所以 features.xml 所做的就是在一个地方收集依赖项....

除非我大错特错。在这种情况下,如何解决我在 features.xml 中有很多依赖项并且它们都不按任何顺序排列的情况。现在我正在经历安装每个包并一个一个启动它们的练习......

告诉我我做错了什么——其中可能有几件事

编辑:功能由 maven 插件生成。当我安装功能时,出现 Unresolved 错误

Error executing command: Unable to resolve root: missing requirement [root] osgi.identity; osgi.identity=myBundleApp; type=karaf.feature; version="[1.0.0.RC1,1.0.0.RC1]"; filter:="(&(osgi.identity=myBundleApp)(type=karaf.feature)(version>=1.0.0.RC1)(version<=1.0.0.RC1))" [caused by: Unable to resolve myBundleApp/1.0.0.RC1: missing requirement [myBundleApp/1.0.0.RC1] osgi.identity; osgi.identity=org.eclipse.jetty.websocket.server; type=osgi.bundle; version="[9.3.6.v20151106,9.3.6.v20151106]"; resolution:=mandatory [caused by: Unable to resolve org.eclipse.jetty.websocket.server/9.3.6.v20151106: missing requirement [org.eclipse.jetty.websocket.server/9.3.6.v20151106] osgi.extender; filter:="(osgi.extender=osgi.serviceloader.registrar)"]]

但是 feature.xml 已经有了 <bundle>mvn:org.eclipse.jetty.websocket/websocket-server/9.3.6.v20151106</bundle>

最佳答案

features.xml 的要点是定义可用于在 Apache Karaf 中配置 OSGi 应用程序的功能存储库。 .换句话说,它的目的就是不必手动安装包!作为documentation状态:

When you install a feature, Apache Karaf installs all resources described in the feature. It means that it will automatically resolves and installs all bundles, configurations, and dependency features described in the feature.

也就是说,请记住:

  • 这是 Karaf 特有的功能。它不适用于其他 OSGi 容器
  • 在你安装一个功能之前,你需要让 Karaf 知道包含它的存储库。您可以使用 feature:repo-list 命令来检查 Karaf 知道哪些 repos,并使用 feature:repo-add 命令来添加存储库。请看这个documentation了解更多详情。
  • 指向 bundle 、功能、配置等的 URL 必须在 features.xml 中指向一个资源 Karaf understands并且可以访问
  • 功能(很像 bundle )在激活之前需要解决。

关于osgi - 如果我必须手动在其中安装 bundle ,features.xml 有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40859610/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com