【发布时间】:2019-08-11 03:10:50
【问题描述】:
我正在使用OSGi R7,并且有一个案例可以方便地将单个配置文件用于两个单独的服务,而为每个服务使用一个新的配置文件。我尝试使用 @Component name 属性设置通用配置文件,但这不起作用(例如重复 PID 警告/错误 - 见下文)。
我尝试的另一件事是仅在一个服务中定义服务配置接口并尝试在两个服务中都使用它,但这似乎也不起作用,因为我没有在第二个服务的@Activate 方法中捕获断点.
@ObjectClassDefinition(name = "My 1st Service Config")
@interface FirstServiceConfig {
String filePath() default "/path/to/my/file";
}
@Component(immediate = true, name = "com.my.generic.config", configurationPolicy = ConfigurationPolicy.REQUIRE, service = {
FirstService.class })
@Designate(ocd = FirstServiceConfig.class)
@ObjectClassDefinition(name = "My 2nd Service Config")
@interface SecondServiceConfig {
String filePath() default "/path/to/my/file";
}
@Component(immediate = true, name = "com.my.generic.config", configurationPolicy = ConfigurationPolicy.REQUIRE, service = {
SecondService.class })
@Designate(ocd = SecondServiceConfig.class)
【问题讨论】:
标签: java osgi configuration-files