Java 捆绑添加事件侦听器

Java 捆绑添加事件侦听器,java,osgi,apache-karaf,osgi-bundle,Java,Osgi,Apache Karaf,Osgi Bundle,是否存在用于向捆绑包上下文添加捆绑包的事件侦听器 我想在安装捆绑包并将其添加到捆绑包上下文之前捕获它,然后停止添加它 您正在寻找BundleActivator界面,如文档中所述: 我想在安装捆绑包之前,在将其添加到捆绑包上下文之前捕获它,然后停止添加它 这实际上不是在包中的代码中要做的事情,而是作为保护管理代理的一部分要做的事情。如果要阻止安装捆绑包,则应启用安全性,并且只允许AdminPermission lifecycle安装应允许安装其他捆绑包的捆绑包。如果捆绑包仅从框架的“外部”(例如框

是否存在用于向捆绑包上下文添加捆绑包的事件侦听器


我想在安装捆绑包并将其添加到捆绑包上下文之前捕获它,然后停止添加它

您正在寻找
BundleActivator
界面,如文档中所述:

我想在安装捆绑包之前,在将其添加到捆绑包上下文之前捕获它,然后停止添加它


这实际上不是在包中的代码中要做的事情,而是作为保护管理代理的一部分要做的事情。如果要阻止安装捆绑包,则应启用安全性,并且只允许
AdminPermission lifecycle
安装应允许安装其他捆绑包的捆绑包。如果捆绑包仅从框架的“外部”(例如框架启动器)安装,那么内部的捆绑包都不需要此权限。

为什么要阻止安装捆绑包?我想停止安装旧版本。我正在寻找的是一个只在一个地方编写的解决方案,捕获所有正在加载的新捆绑包,在安装它们之前,我无法停止将它们添加到框架中。至于get,使用BundleActivator,我必须在每个bundle中编写解决方案。