从命令行调用OSGi服务

时间:2014-02-13 14:54:11

标签: java cmd osgi apache-felix

我有一个在Felix框架上运行的OSGi项目,有多个服务。我需要从命令行(而不是从OSGi shell)访问其中一个服务。这是可能的,如果可以的话,我该怎么做?

2 个答案:

答案 0 :(得分:0)

创建一个从命令行运行的Java程序?如果不使用Java(或其他JVM语言),则无法访问服务注册表。

或者,您当然可以将API公开为RESTful Web服务,并从JVM外部通过该API访问您的服务。

答案 1 :(得分:0)

OSGi服务仅在本地OSGi框架内可用。所以你需要使用一些远程处理来从另一个进程到达它们。基于felix构建的Apache Karaf支持使用ssh访问正在运行的服务器的命令客户端。这样,您就可以从OS命令行执行OSGi shell的命令。这可能对你的情况有所帮助。