gpt4 book ai didi

java - 创建可扩展的 Java 库 (JAR)

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:55:49 25 4
gpt4 key购买 nike

我希望创建一个可以在其他项目中使用的 Java“库”(JAR),但我希望我的库是可扩展的。我在寻找类似 OSGi 的东西,其中我的库具有其他 JAR 可以 Hook 的“扩展点”。我的想法是,我的库将有一组核心方法,这些方法将由它所用的项目调用,但这些方法的具体实现可能因项目/上下文而异。

我研究过 OSGi(例如 Equinox),但我不确定它是否可以按照我想要的方式使用。它似乎是针对独立应用程序而不是创建库。

实现此目标的最佳方法是什么? OSGi 能否以这种方式使用,如果不能,是否有可用的框架?

我希望一切都清楚 - 我对自己想要的东西有一个清晰的想法,但很难说清楚。

最佳答案

OSGi 很棒,但我认为这不是您所需要的。通过使用 OSGi(-Services),您强制图书馆的用户也使用 OSGi 环境。

我认为正如@Peter 所说,您可以通过在特定项目/上下文中简单地扩展库的类来做到这一点。

但是如果您想使用 OSGi,有一种简单的方法可以实现。它叫做 Bundle Fragments。通过这种方式,您可以创建一个包并扩展所谓的主机包”,即您的库,而无需更改原始库。一个流行的用例是,如果您的包中有特定于平台的代码。

关于java - 创建可扩展的 Java 库 (JAR),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12515809/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com