如何使用java和远程karaf容器以编程方式部署、启动和停止OSGI捆绑包?

如何使用java和远程karaf容器以编程方式部署、启动和停止OSGI捆绑包?,osgi,apache-karaf,Osgi,Apache Karaf,我对OSGI完全陌生,我开发了一个编译器,可以将DSL转换为OSGI包,现在我想使用java和远程Karaf容器以编程方式管理这些包(启动、停止、部署),我想知道这是否可能,如果是这样的话,我该怎么做呢?最自然的方法是为每个DSL包创建一个功能。通过这种方式,您可以安装功能repo和也安装捆绑包的功能。此方法还允许部署/取消部署捆绑包可能具有的依赖项。要使用它,您需要将捆绑包和功能部署到maven repo,并使用此repo url进行安装。您可以使用触发功能安装 另一种可能的方法是通过jmx直

我对OSGI完全陌生,我开发了一个编译器,可以将DSL转换为OSGI包,现在我想使用java和远程Karaf容器以编程方式管理这些包(启动、停止、部署),我想知道这是否可能,如果是这样的话,我该怎么做呢?

最自然的方法是为每个DSL包创建一个功能。通过这种方式,您可以安装功能repo和也安装捆绑包的功能。此方法还允许部署/取消部署捆绑包可能具有的依赖项。要使用它,您需要将捆绑包和功能部署到maven repo,并使用此repo url进行安装。您可以使用触发功能安装

另一种可能的方法是通过jmx直接安装捆绑包。我没有它的实际文档引用,但是您可以通过jconsole简单地检查bean