Java OSGI:org/OSGI/framework/ServiceEvent/MODIFIED未被解雇

Java OSGI:org/OSGI/framework/ServiceEvent/MODIFIED未被解雇,java,osgi,apache-felix,Java,Osgi,Apache Felix,我有一个OSGI(Felix)应用程序,其中很少有使用声明性服务创建的服务。 e、 g @服务 @组件(元类型=true) 公共类SomeService实现接口{ @属性(value=“1”) 私有静态最终字符串SOME_PROP=“SOME_PROP”; @修改 修改了公共空间(图中的地图) {//一些代码 } @激活 公共无效激活(图中的地图) {//一些代码 } 现在,在启动框架之后,我可以看到与此服务对应的捆绑包已经启动。 如果我试图更改属性(某些属性)通过OSGI控制台,我只看到事件

我有一个OSGI(Felix)应用程序,其中很少有使用声明性服务创建的服务。 e、 g

@服务
@组件(元类型=true)
公共类SomeService实现接口{
@属性(value=“1”)
私有静态最终字符串SOME_PROP=“SOME_PROP”;
@修改
修改了公共空间(图中的地图)
{//一些代码
}
@激活
公共无效激活(图中的地图)
{//一些代码
}
现在,在启动框架之后,我可以看到与此服务对应的捆绑包已经启动。 如果我试图更改属性(某些属性)通过OSGI控制台,我只看到事件主题为org/apache/felix/webconsole/plugins/event/internal/converter/ConfigurationEventConverter/CM_UPDATED的事件被触发。我没有看到org/OSGI/framework/servicevent/MODIFIED被触发,因此没有调用MODIFIED方法,我也看不到新的正确方法ty值。我注意到的另一件奇怪的事情是,即使bundlefelix.scr列在已安装的bundles列表中,我也看不到bundleorg.apache.felix.scr启动了与之对应的事件


关于为什么不更新属性的任何提示?

任何人有什么想法吗?您使用哪些注释?以及“我尝试更改属性”是什么意思?这是一个系统属性、配置管理属性还是其他属性?您正在更改哪个PID,它是否与服务组件的名称匹配?您到底为什么希望触发ServiceEvent/MODIFIED?太多未知和模糊的语句无法开始提供可能的答案。
@Service
@Component(metatype = true)
public class SomeService implements IInterface {
@Property(value = "1")
private static final String SOME_PROP = "SOME_PROP";

@Modified
public void modified(Map<String, ?> inConfig)
{ //some code
}

@Activate
public void activate(Map<String, ?> inConfig)
{ //some code
}