0

如果在其激活方法中引发特定异常,如何停用当前捆绑包?

    public void activate(BundleContext bundleContext) {
        try{
             if(something) throw new Exception(); 
        } catch(Exception e) {
             //deactivate bundle... 
        }
    }
4

1 回答 1

0

我假设您正在谈论声明式服务组件,在这种情况下,您可以让 activate 方法引发异常(也许将其包装在运行时异常中),在这种情况下,组件将不会被激活。

不过,您应该意识到 DS 运行时可能会多次尝试激活它。

这里有一个非常相似的问题

于 2013-01-23T16:24:10.140 回答