Java Plug-in Framework project is intended to provide standard plug-in infrastructure to existing or new Java projects. It helps greatly improve modularity and extensibility of your Java systems and decrease their support and maintenance cost.

The Framework implements the runtime engine that dynamically discovers and runs plug-ins. A plug-in is a structured component that describes itself to the Framework using a manifest file. The Framework maintains a registry of available plug-ins and the function they provide (via extension points and extensions).

A general goal of the Framework is that the application (and end user using it) should not pay a memory or performance penalty for plug-ins that are installed, but not used. A plug-in can be installed and added to the registry (even when application is running), but the plug-in will not be activated unless a functionality provided by the plug-in has been requested according to the user's activity.

Licence: LGPL