如何在java中编写自己的插件加载器?

San*_*A T 2 java plugins add-on

如何在我的java程序中实现插件工具?

我正在使用Java.我当前的项目是与通用电子硬件相关的东西,它具有自定义命令集.

现在有一个通用的GUI,人们可以通过它访问硬件.硬件在不同环境中以不同方式运行,即针对不同客户端.现在的问题是GUI必须能够添加插件.插件意味着,它必须能够为拥有该特权的客户提供特定设施.从客户方面来说,添加插件非常简单,只需单击按钮即可添加特定工具.

我考虑插件的原因是,只有在交付核心产品后才会引入越来越多的设施.

Mot*_*Mot 8

您需要提供以下内容:

  • 创建一个API,您的插件可用于更改/扩展您的程序的行为(恕我直言,这是最棘手的部分)
  • 定义插件的公共条目,例如,定义插件的入口点或扩展点的插件特定属性文件(实现接口的插件类的类名)
  • 从您选择的位置动态加载插件,例如,来自特定目录的所有*.jar文件(看看URLClassLoader)

API建议:

  • 更喜欢接口而不是(抽象)类
  • 它可能是有用的,以帮助用户快速地看到她能实现哪些接口(例如IAction,注意前导I)和由您的应用程序插件的使用提供(例如WindowManager)