我从源插件创建了两个不同的插件。第一个插件包含应用程序逻辑类,第二个插件包含用户界面类。 目前我遇到了一个问题,因为应用程序逻辑中的一个类在UI插件中使用静态方法,我必须摆脱这种依赖性,否则我将获得循环依赖。
该方法应保留在UI类中,因为它使用eclipse和SWT小部件(为用户打开MessageDialog),我也不能将调用此方法的类移动到UI插件,因为有很多其他应用程序逻辑类使用它甚至从它继承。
我认为'观察者模式'将解决问题,但它不会,因为在这种情况下我的UI类将是观察者(一旦它从可观察的逻辑类获得通知,它打开消息对话框)和我的应用程序逻辑类是可观察的。因此,在注册观察者时,需要UI类的实例。实现自定义Observer模式时也是如此。
我该如何解决这个问题呢? 我真的需要帮助。感谢