当前位置: 首页 > 知识库问答 >
问题:

在嵌入式Apache Felix 5上以编程方式设置捆绑包的启动级别

鱼宜
2023-03-14

我已经在我正在构建的应用程序中嵌入了Apache Felix 5.0.0。

在将捆绑包安装到Felix framework对象时,我无法从代码中设置捆绑包的起始级别,我到处都能看到人们用Gogo手动安装捆绑包,但因为我要自动安装并启动捆绑包,所以我希望能够从代码中设置起始级别。

我怎么做呢?我读过一些StartLevel类之类的东西,但是我没有找到任何实际的工作代码来展示如何使用它来设置捆绑包的开始级别。

共有1个答案

双俊人
2023-03-14

如果你使用嵌入式Felix,我猜你有一个框架实例。在这种情况下,我认为以下方法可行:

Bundle bundle = framework.getBundleContext().installBundle(location);
BundleStartLevel bundleStartLevel = bundle.adapt(BundleStartLevel.class);
bundleStartLevel.setStartLevel(xxx);
 类似资料:
  • 符号名ram 线程“main”组织中出现异常。奥斯基。框架BundleException:bundle ram[1]中未解析的约束:无法解析1.0:缺少需求[1.0]osgi。装电线。包裹(osgi.willing.package=android.dalvik)。阿帕奇。菲利克斯。框架菲利克斯。resolveBundleRevision(Felix.java:3826)位于org。阿帕奇。菲利克斯

  • 我们使用Karaf-4作为OSGI容器。我们有几个与一个功能关联的捆绑包。当某个功能中的任何捆绑包失败时,我们希望以编程方式进行识别。我们尝试了 BundleTracker 和 BundleListener,但是当捆绑包在“GracePeriod”状态下等待失败时,我们不会收到通知。 我们可以在karaf控制台中使用“list”命令查看故障包的状态。我们希望通过通知以编程方式实现这一点,而不是在k

  • 问题内容: 请看下面的代码 数据库连接器 数据库UI 在这种情况下,我需要通过右键单击 _数据库节点 启动服务器_来手动启动derby(我正在使用NetBeans)。这是一个嵌入式数据库,这意味着我要将其从一台计算机转移到另一台计算机,并愿意通过双击jar文件来开始,而不是在每台计算机上都配置数据库并手动启动它们。但是,如果我没有手动启动数据库,则会收到错误消息 java.sql.SQLNonTr

  • 请看一下下面的代码 数据库连接器。JAVA 用户界面 在这种情况下,我需要通过右键单击数据库节点手动启动derby(我使用的是NetBeans) JAVAsql。SQLNonTransientConnectionException:java。网ConnectException:连接到端口1527上的服务器本地主机时出错,消息“连接被拒绝:连接”。 无论是在NetBeans内部,如果我没有手动启动它

  • 我已经通读了很多问题,但还没有找到确切的答案。我试图在jTree上设置选择,试图为我的Java项目创建一种API。我可以用myTree轻松地在父节点上设置选择。选举(1); 子节点上的任何叶子都有问题。我有一个walk函数,我正在其中寻找一个特定的字符串。当我用我正在寻找的字符串到达节点时,我设法返回了一个Object[]。但我不能把它转换成树形路径来使用myTree。设置选择路径(路径)。有人能

  • 有没有办法以编程方式自定义这些TextInputLayout属性: textColorHint 彩色口音 颜色控制正常 颜色控制已激活 文本选择句柄 我知道如何使用主题属性对它们进行样式化,但是我正在处理的项目动态地加载颜色信息,据我所知,在运行时无法更改主题/样式值。