2010-03-03 28 views
2

如果我想让我的Java程序能够接受插件,我怎样才能使Java插件使用核心程序类而不将所有代码包含到插件代码中?插件如何访问程序界面而不将其包含到自己的jar文件中?如何制作Java插件?

回答

5

看看Java Plugin Framework。 它在您的应用程序中使用扩展点或位置的概念,旨在进行扩展。插件是您的应用程序然后扩展的手段。

0

使用java.net.URLClassLoader.newInstance与您的应用程序的类加载器作为父项。

+0

如果我使用反射来确定插件是否具有某些方法名称和类名,该怎么办?然后从主程序调用这些方法? – newbie 2010-03-03 08:03:42

+0

@newbie,这是一般的想法,是的。这样,你不必知道在编译时你将要处理的是什么类。插件的程序员只需确保它们符合您的应用程序所期望的接口。 – 2010-03-03 08:09:17

+0

@newbie @Mike不需要那个。您可以简单地从应用程序代码实现一个接口/扩展一个类。 – 2010-03-05 16:01:45