Java Felix ConfigAdmin(文件)|我的文件是否需要包含service.pid?

Java Felix ConfigAdmin(文件)|我的文件是否需要包含service.pid?,java,osgi,apache-felix,Java,Osgi,Apache Felix,我使用的是Felix ConfigurationAdmin 1.8.6(它包含在OSGI途中),我无法让它处理文件夹中的文件 我下载了资料,想看看发生了什么,但我还是不知道 首先,我添加了run属性felix.cm.dir,指定要配置服务的文件夹。从调试中我看到,它工作得很好,但是我的托管服务得到一个空属性映射 接下来,我发现我的属性必须具有以下格式才能读取(带双引号): 尽管如此,我还是得到了一个空属性映射 然后我发现,在读取我的属性之后,FilePersistenceManager.seek

我使用的是Felix ConfigurationAdmin 1.8.6(它包含在OSGI途中),我无法让它处理文件夹中的文件

我下载了资料,想看看发生了什么,但我还是不知道

首先,我添加了run属性felix.cm.dir,指定要配置服务的文件夹。从调试中我看到,它工作得很好,但是我的托管服务得到一个空属性映射

接下来,我发现我的属性必须具有以下格式才能读取(带双引号):

尽管如此,我还是得到了一个空属性映射

然后我发现,在读取我的属性之后,FilePersistenceManager.seek()只返回字典,如果它不包含service.pid属性,或者它包含该属性并且它等于文件名。在比较之前,它用斜线替换点,所以它永远不等于。。。无论如何,我最好不要指定service.pid属性,我看不出有什么意义

当字典返回到CachingPersistenceManagerProxy时,仅当字典包含service.pid ou factory.pid属性时,才会缓存它;这永远不会发生


我遗漏了什么吗?

我不知道enRoute是否带来了ApacheFelixFileInstall,但如果没有这个捆绑包,配置管理服务将无法获取配置文件。FileInstall通常会处理这个问题。在这种情况下,您需要确保cfg文件的名称与PID匹配。
因此,对于pid:my.conf.foo的配置,您需要一个文件my.conf.foo.cfg,该文件位于FileInstaller捆绑包监视的文件夹中。它将拾取此文件,并确保您的配置已更新为该文件的内容

我不知道enRoute是否带来了ApacheFelixFileInstall,但如果没有这个捆绑包,配置管理服务将无法获取配置文件。FileInstall通常会处理这个问题。在这种情况下,您需要确保cfg文件的名称与PID匹配。
因此,对于pid:my.conf.foo的配置,您需要一个文件my.conf.foo.cfg,该文件位于FileInstaller捆绑包监视的文件夹中。它将拾取此文件,并确保您的配置已更新为该文件的内容

我不知道enRoute是否带来了ApacheFelixFileInstall,但如果没有这个捆绑包,配置管理服务将无法获取配置文件。FileInstall通常会处理这个问题。在这种情况下,您需要确保cfg文件的名称与PID匹配。
因此,对于pid:my.conf.foo的配置,您需要一个文件my.conf.foo.cfg,该文件位于FileInstaller捆绑包监视的文件夹中。它将拾取此文件,并确保您的配置已更新为该文件的内容

我不知道enRoute是否带来了ApacheFelixFileInstall,但如果没有这个捆绑包,配置管理服务将无法获取配置文件。FileInstall通常会处理这个问题。在这种情况下,您需要确保cfg文件的名称与PID匹配。
因此,对于pid:my.conf.foo的配置,您需要一个文件my.conf.foo.cfg,该文件位于FileInstaller捆绑包监视的文件夹中。它将拾取此文件,并确保您的配置已更新为该文件的内容

你是对的,我在我的跑步包设置中看到文件上传,这让我困惑。你是对的,我在我的跑步包设置中看到文件上传,这让我困惑。你是对的,我在我的跑步包设置中看到文件上传,这让我困惑。你是对的,我在我的跑步包设置中看到文件上传,这让我困惑。
key="value"