【问题标题】:java question on jar dependencies关于jar依赖的java问题
【发布时间】:2011-08-23 20:37:03
【问题描述】:

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

谢谢

【问题讨论】:

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


    【解决方案1】:

    创建一个接口并让 util.jar 与接口一起使用 main.jar 传递简单包装此上下文的实现?

    循环依赖看起来就像一场噩梦。你会先建哪一个?

    【讨论】:

      【解决方案2】:

      一旦你看到你有循环依赖,你就知道你的设计有问题。你有没有想过是否可以申请Observer Pattern?或者尝试阅读这篇关于Acyclic Relationships的文章

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-12-25
        • 1970-01-01
        • 1970-01-01
        • 2014-02-26
        • 2017-01-25
        • 2022-01-07
        • 1970-01-01
        • 2012-07-04
        相关资源
        最近更新 更多