Felix Configurator 中的环境特定配置

Environment specific configurations in Felix Configurator

Felix Configurator 允许使用 JSON 文件应用服务配置。我在 OSGI-INF/configurations 下提供了一堆 json 文件,这些文件是由正确应用配置的配置器包挑选的。这很好,但我正在考虑在环境基础上应用配置,例如 Sling 运行 模式配置或 Spring 配置文件。

我查看了 Felix Configurator 代码和规范,但找不到任何关于此类功能的参考资料。

OSGi 专家,请建议如何实现。

如果您只需要替换配置中的值而不需要更改结构,那么 felix interpolation 是最佳解决方案。

docker 的一个好习惯是使用环境变量:

com.my.userinfo:
"greeting": "Hello $[env:USER]!"

请确保您使用的是最新版本的 felix configadmin,因为插值使用了 OSGi R7 中的新 configadmin 功能。