我尝试将OSGi的“Apache Felix”实现用于我的项目,我从可分发的jar(/ bin /felix.jar)启动框架。我创建了简单的示例包来注册或使用注册表中的服务。 我想使用配置管理服务,所以我在框架中安装了包“org.apache.felix.configadmin”felix,然后我不知道如何以及在哪里放置另一个包的配置文件,例如我想要安装捆绑包“org.apache.felix.http.jetty”,然后我想通过configAdmin配置这个包,那么我如何重命名我的配置文件,以及放在哪里?
另一个问题,设置之间的区别是什么,例如,使用框架属性(conf / config.properties)的jetty包的属性“org.osgi.service.http.port”或通过bundle配置它配置管理服务。
致以最诚挚的问候,
答案 0 :(得分:2)
您可能还需要来自felix的文件安装程序才能获取配置文件。 如果你想看到一个有效的例子,请看看Apache Karaf。它是一个OSGi容器,具有许多不错的预配置功能。配置管理服务开箱即用。
答案 1 :(得分:2)
通常您会将felix config admin service与felix fileinstall一起使用。因此,fileinstall会负责监视配置文件的目录,并将其移交给配置管理员,使其在OSGi中作为配置使用。
有关完整的示例,请查看Apache Karaf。在那里,您可以看到它需要的配置才能协同工作。您也可以考虑简单地将自己的软件包安装到karaf中,因为这样可以更轻松地管理felix框架。