Java插件框架:PF4J

jopen 10年前

利用PF4J能够轻松将单一的Java应用转换成模块化的应用程序。
PF4J 是一个开源的,轻量级(大约50KB)插件框架。拥有最小的依赖关系(只SLF4J-API)和很强的可扩展(见PluginDescriptorFinder和ExtensionFinder)。实际上PF4J是一个microframework并保持其核心简单,但可扩展。
现在有这些扩展可用:

组件

  • Plugin is the base class for all plugins types. Each plugin is loaded into a separate class loader to avoid conflicts.
  • PluginManager is used for all aspects of plugins management (loading, starting, stopping).
  • ExtensionPoint is a point in the application where custom code can be invoked. It's a java interface marker.
    Any java interface or abstract class can be marked as an extension point (implements ExtensionPoint interface).
  • Extension is an implementation of an extension point. It's a java annotation on a class.

项目主页:http://www.open-open.com/lib/view/home/1408281442944