关于jar依赖项的java问题

时间:2011-05-12 06:14:08

标签: java spring design-patterns java-ee jar

我有一个项目,其主要部分(例如main.jar)依赖于已创建为独立项目的库(例如u1.jar,u2.jar等)。
因此可以在其他地方重用该库,即实用程序库和主要部分之间没有依赖关系 主要部分当然依赖于库,但这没关系 现在我需要在其中一个库中添加特定功能 已经实现了所需的功能 它通过spring bean实现,用户可以配置实现在运行时的行为方式 Spring应用程序上下文是通过主项目创建并仅使用 ,因此我无法访问spring上下文 来自实用程序库。
问题是我想重用这个实现(而不是重复代码),并且不可能将该部分移动到其他地方 我想到的是在这个特定的工具罐中创建一个依赖项来引用main.jar 我这样做是为了能够从实用工具罐中访问弹簧上下文 我关心的是,现在,main.jar和util.jar之间存在循环依赖关系 即main.jar已经依赖于util.jar,现在我也将创建一个反向依赖 这是一个好主意吗?还是我陷入困境(课堂装载等问题)? 对于这类问题,有一个很好的方法吗?

由于

2 个答案:

答案 0 :(得分:0)

创建一个接口,让util.jar与main.jar的接口一起工作,传递简单包装这个上下文的实现?

循环依赖看起来像一场噩梦。你将首先建立哪一个?

答案 1 :(得分:0)

一旦你看到你有循环依赖,你知道你在设计中有问题。您是否考虑过是否可以申请Observer Pattern?或者尝试阅读有关Acyclic Relationships

的内容
相关问题