Karaf OSGI blueprint cm:属性占位符dows未从cfg文件加载

Karaf OSGI blueprint cm:属性占位符dows未从cfg文件加载,osgi,configuration-files,karaf,blueprint,Osgi,Configuration Files,Karaf,Blueprint,我的蓝图包括: <cm:property-placeholder persistent-id="pool-service" update-strategy="reload"> <cm:default-properties> <cm:property name="maxTotalPerKey" value="2" /> </cm:default-properties> </cm:property-placehol

我的蓝图包括:

<cm:property-placeholder persistent-id="pool-service" update-strategy="reload">
    <cm:default-properties>
        <cm:property name="maxTotalPerKey" value="2" />
    </cm:default-properties>
</cm:property-placeholder>

我放置了包含maxTotalPerKey=3的etc/pool-service.cfg

当我部署jar时,它选择值2。若我注释cm:default属性,它会失败,出现数字格式异常,所以不会读取cfg

我缺少什么(maven依赖、导入、配置等)

谢谢,
Viktor

配置文件不能包含
-
。将
etc/PoolService.cfg
文件更改为使用:

persistent-id="PoolService"

您的配置文件的名称不应该与包的名称相同吗?ie package.bundle.version?它应该与PID匹配?好的,持久id定义了配置文件的名称,因此可以按照您的意愿命名。这个捆绑包是共享服务的,简直难以置信。在我们的项目中花了几个小时调试一个类似的案例(破折号
持久id
),我终于在这里偶然发现了这个主题。谢谢@Viktor分享这个解决方案!任何被非加载配置阻止的人-可能就是这种情况。