我试图做一个基于插件的应用程序,这意味着,除了基本框架,其他功能应添加插件风格。设计一个基于Java应用程序的插件
我认为这样的系统的majar问题是如何在运行时加载新的插件。我不想在安装新插件时重新编译整个项目。就像Eclipse一样,在新安装插件之后,用户只需要重新启动它。 所以我的第一个想法是使用java反射来在运行时加载类。可能会有一些插件配置文件,系统会读取它们并通过反射来加载插件类。也许我也可以使用spring框架,因为它的Inversion of Control符合我的要求。
我正在调查的另一个想法是使用ejb容器。当插件是ejbs时,我可以将它们打包成jar并将它们部署到ejb容器中,然后我可以使用jndi来访问它们。但它只在插件是ejbs时才起作用。无论如何,我是一个系统设计的菜鸟。所以我张贴这个话题,并希望听到你的意见。 btw。有没有关于你想推荐的系统设计的好书?
非常感谢!
“我想听听你的意见”不是一个好问题,试着做一个更具体的问题 – Cephalopod
看看Class.forName() –