如何从 karaf 的包上下文中获取 OSGI 包的名称

How to get the name of an OSGI bundle from a bundle context in karaf

我正在用 Karaf 加载 3 个小型 OSGI 包(包 A、B、C)。每个包由一个 Activator class 组成,它实现了启动和停止方法。从 bundle A 的启动方法中,我想打印出所有已安装的 bundle 的列表。

输出:Bundle A 的名称,Bundle B 的名称,Bundle C 的名称

我该怎么做?

for (Bundle bundle : bundleContext.getBundles()) {
    System.out.println("Symbolic-Name: " + bundle.getSymbolicName());
    System.out.println("  Version: " + bundle.getVersion());
    // And printing other info
}