Equinox OSGi 主要的控制台命令表
类别 | 命令 | 含义 |
控制框架 |
| 启动框架 |
| 停止框架 | |
| 关闭、退出框架 | |
| 立即退出,相当于 System.exit | |
| 卸载所有 bundle(前提是已经 shutdown) | |
| 设置属性,在运行时进行 | |
控制 bundle |
| 安装 |
| 卸载 | |
| 启动 | |
| 停止 | |
| 刷新 | |
| 更新 | |
展示状态 |
| 展示安装的 bundle 和注册的服务 |
| 展示所有 bundle 的简单状态 | |
s | 展示注册服务的详细信息 | |
| 展示导入、导出包的状态 | |
| 展示所有已经安装的 bundles 的状态 | |
| 展示 bundles 的头信息,即 MANIFEST.MF 中的内容 | |
| 展示 LOG 入口信息 | |
其它 |
| 在另外一个进程中执行一个命令(阻塞状态) |
| 和 EXEC 不同的是不会引起阻塞 | |
| 促使垃圾回收 | |
| 得到属性,或者某个属性 | |
控制启动级别 |
| 得到某个 bundle 或者整个框架的 start level 信息 |
| 设置框架的 start level | |
| 设置 bundle 的 start level | |
| 设置初始化 bundle 的 start level |
我们常用的就是用ss来查看所有的bundles的状态情况,我们也可以用start/stop来开启和关闭一个bundle,它后面跟的是bundle的ID,才能启动和关闭它,而不一定是ss看到的bundle的名字。
MANIFEST.MF 文件属性
Bundle-Activator | Bundle 的启动器 |
Bundle-SymbolicName | 名称,一般使用类似于 JAVA 包路径的名字命名 |
Bundle-Version | 版本,注意不同版本的同名 bundle 可以同时上线部署 |
Export-Package | 导出的 package 声明,其它的 bundle 可以直接引用 |
Import-Package | 导入的 package |
Eclipse-LazyStart | 是否只有当被引用了才启动 |
Require-Bundle | 全依赖的 bundle,不推荐 |
Bundle-ClassPath | 本 bundle 的 class path,可以包含其它一些资源路径 |
Bundle-RequiredExecutionEnvironment | 本 bundle 必须的执行环境,例如 jdk 版本声明 |