Application Plugin Format
Mule applications can make use of Application Plugins, which provide a way to reuse behaviour across applications maintaining isolation per application.
A plugin is a 'zip' file with the following structure:
1 2 3 4 / \- classes // plugin-specific expanded resources (e.g. logging configuration files, properties, etc |- lib // plugin-specific jars |- plugin.properties // custom properties to be added to the registry instance used by the plugin (optional)
Application plugins must be placed in the folder
The following properties are currently recognized on plugin.properties file:
loader.override- provides fine-grained control over class loading within a plugin.
Here are some things to consider regarding the plugins:
Multiple plugins, such as connectors, can be bundled in the application.
Each plugin must be packaged as a zip file following the mentioned structure.
The plugins are deployed in natural sort order by 'zip' filename.
Exploded plugins are not currently supported. The rationale for this is to encourage and maintain a simple plugin distribution model of just one file.
The deployment lifecycle of the plugin is tied to the application.