gpt4 book ai didi

java - 如何使 java 应用程序的外部 jar 可用于其插件

转载 作者:太空宇宙 更新时间:2023-11-04 15:10:13 25 4
gpt4 key购买 nike

我想制作一个支持插件的java应用程序。现在我的核心将使用 jar 来执行某些进程。如果我的插件也使用这些 jar,我的应用程序的插件是否需要配置其构建路径以包含它们也会使用的 jar,或者它们是一种可以导入 jar 的方式,类似于我导入包的方式从主应用程序

最佳答案

Guice 和 Spring 是依赖注入(inject)工具,这意味着使用它们创建对象更容易,因为它们负责实例化对象并将它们放入依赖于它们的其他对象中。

现在,当我们谈论插件时,我们通常也在谈论动态地将新类加载到正在运行的应用程序中。考虑一下 Eclipse IDE。它的架构从一开始就被设计为“可插拔”,例如,您可以下载 jar,Eclipse 会将它们添加到正在运行的应用程序中,而无需重新启动应用程序。

在这种情况下,如果你想构建可插入的应用程序,从动态类加载的意义上来说,我建议你不要走这条路,而是去研究诸如 OSGI 之类的主题。一种流行的 OSGI 框架是 http://felix.apache.org/

应用程序扩展的另一种方法(我猜,我们也可以将其称为可插拔),具体取决于您的应用程序的组织方式及其功能,是为其开发 DSL ( http://en.wikipedia.org/wiki/Domain-specific_language ) 并扩展它,让人们向其中添加脚本。当浏览器允许您添加用 javascript 编写的功能时,这不是类似的事情吗?对于 java 程序员来说,Groovy 在某些方面使 DSL 变得更容易。 (参见http://docs.codehaus.org/display/GROOVY/Writing+Domain-Specific+Languages)

关于java - 如何使 java 应用程序的外部 jar 可用于其插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21426065/

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