2011-04-28 96 views
3

我插件系统在我的Java应用程序。是否有可能随时加载JAR/Java类到您的应用程序,还是必须将这些JAR/Java类包含到我的应用程序中?是否可以将JAR加载到正在运行的Java应用程序中?

我的想法是加载插件应用程序,然后调用这个类的接口方法,而不需要重新启动Java应用程序。这是可能的,甚至是明智的吗?

回答

10

我建议使用OSGi的动态插件的加载/卸载。它处理所有类加载的东西。如果你不能使用OSGi中,你将不得不使用自己的类加载器,并与待装的jar文件的位置配置。

4

我也建议OSGi的,但对于一个简单的基于插件系统,检查出的Java插件框架。它旨在简化基于插件的系统,可在http://jpf.sourceforge.net/找到。

正如@Liv提到的那样,类似URLClassLoader的东西可以用于简单的一次性加载,但这是一个快速修复,而不是一个插件加载系统的好起点。

相关问题