鉴于这种情况:
捆绑A:组件1A(启用:false) 捆绑B:组件2B
如何从Bundle B或Component 2B启用组件1A?
我尝试使用componentContext,
来做到这一点dsContext.enableComponent("1A");
但它似乎只适用于同一捆绑中的服务。
答案 0 :(得分:0)
您使用的是用于管理的机制,似乎您希望在应用程序级别上使用它。应通过其依赖关系或通过特定于域的方式启用/禁用声明性服务。你应该不让另一个启用/禁用组件的actor。使用这条路线可能会得到非常复杂的系统,因为很难控制时间和顺序。
从技术上讲,你应该使用Apache Felix SCR服务来控制DS的启用/禁用,遗憾的是这还没有标准化,然后需要Apache Felix SCR作为DS的实现。
如果您解释为什么要启用/禁用其他组件,可能会为您指出更好的解决方案。