【问题标题】:What do these OSGi commands really do?这些 OSGi 命令的真正作用是什么?
【发布时间】:2012-01-14 17:00:36
【问题描述】:

使用 Felix / Equinox,以下在引擎盖下做了什么?

osgi:install
osgi:refresh
osgi:resolve
osgi:restart
osgi:update

在某处是否有状态机图或更简洁的文档?

【问题讨论】:

    标签: osgi equinox apache-felix


    【解决方案1】:

    有关 Felix shell 命令的详细信息,您可以查看它们的源代码,地址为 http://svn.apache.org/repos/asf/felix/trunk/shell/src/main/java/org/apache/felix/shell/impl/ - 其中大部分都很简短。

    【讨论】:

      【解决方案2】:

      最好的文档是OSGi Core Specification。下面的章节和页码参考规范的 4.3 版(2011 年 4 月)。

      osgi:install 表示从文件或流中安装包,它映射到 API 中的 BundleContext.installBundle 方法。请参阅第 90 页的第 4.4.3 节。

      osgi:refresh 执行“刷新包”操作,允许在安装或更新一组包后重新连接导出/导入。例如,当前连接到包的特定导出器的包可能重新连接到导出相同包的新安装包。请参阅第 7.6.1 节,第 148 页。

      osgi:resolve 类似于刷新,但它只连接当前处于 INSTALLED 状态的包。 IE。它不会重新布线属于已经处于 RESOLVED 状态的束的现有电线。

      osgi:restart 停止并重新启动特定捆绑包。这不会导致更新包实现,它只是停止和启动。请参阅第 91 页第 4.4.5 节和第 95 页第 4.4.7 节。

      osgi:update 请求更新单个包(即从其原始位置重新加载)。这可能涉及停止、重新解析和启动捆绑包,具体取决于更新前的状态。请参阅第 95 页第 4.4.9 节。

      所有 OSGi 包状态的状态图在第 4.4.2 节(图 4.4)第 90 页。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-11-19
        • 2011-12-21
        • 2019-06-15
        • 2019-11-04
        • 1970-01-01
        • 1970-01-01
        • 2013-02-23
        • 1970-01-01
        相关资源
        最近更新 更多