dev-guide:plugins
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| dev-guide:plugins [2024/06/05 18:03] – gaetan | dev-guide:plugins [2025/06/18 12:05] (current) – barley1965 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | GroIMP is designed around plugins, which can easily | + | GroIMP is designed around plugins, which can be added, modified |
| - | ====== Plugin | + | ====== |
| - | The plugin | + | Any repository with a '' |
| - | The repositories can be provided in three formats: | + | To be properly loadable though, the '' |
| - | | + | <code xml> |
| - | - Ordered List ItemAs a local directory. The directory is automatically scanned to find any Groimp | + | <?xml version=" |
| - | - Ordered List ItemAs a list of repositories (.list). The .list file is a simple list of any of the three repository formats. | + | <plugin |
| + | version=" | ||
| + | xmlns=" | ||
| + | </ | ||
| + | where '' | ||
| - | ====== JSON format for plugin data ====== | + | See more: |
| - | The metadata used by the plugin | + | * [[: |
| + | * [[: | ||
| + | * [[: | ||
| + | * [[: | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| - | id : The unique id of the plugin. | + | ====== Managing plugins ====== |
| - | name : The name of the plugin. Defined in plugin.properties | + | |
| - | versions : A list of version. | + | |
| - | description (optional) | + | |
| - | helpUrl (optional) | + | |
| - | vendor (optional) | + | |
| - | mainClass (optional) | + | |
| - | A version is composed of: | + | GroIMP plugins are located in directories by default: |
| + | - ''/ | ||
| + | - '' | ||
| - | its version : The version number | + | Additionally, |
| - | a downloadUrl : The url to download the plugin | + | |
| - | depends : A list of other GroIMP plugin required to run the plugin. The plugins are designed by their id and a version number | + | |
| - | libs : A list of external libraries required by the plugin. The list must contains the name of the jar used by groimp and an url (or local path) to fetch that jar. | + | When GroIMP starts it will automatically load every plugin |
| - | Here is an example of a plugin.json file: | + | **Note:** It is possible to // |
| - | < | + | |
| - | [ | + | |
| - | { | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | "1.2.3" : { | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | }, | + | |
| - | " | + | |
| - | " | + | |
| - | } | + | |
| - | } | + | |
| - | } | + | |
| - | } | + | |
| - | ] | + | |
| - | </ | + | |
| - | ===== Plugin version conditions ===== | + | |
| - | ==== Equal condition | + | ===== Manually |
| - | The plugin usually depends on other groimp plugins. | + | It is possible to manually add or remove |
| - | That dependency is defined | + | |
| - | < | + | The added plugin needs to be compiled and follow the plugin structure. See [[:dev-guide: |
| - | " | + | |
| - | " | + | **Note:** If you do not have the permission to delete a repository from the GroIMP installation folder, you can prevent the plugin from being loaded by adding it to the // |
| - | } | + | |
| - | </code> | + | ===== Plugin Manager |
| - | ==== Higher than condition | + | |
| + | The plugins can easily be updated, installed, or removed from the GUI with the | ||
| + | [[user-guide: | ||
| + | |||
| + | The plugin manager uses the [[: | ||
| - | By default the plugin manager uses the " | ||
dev-guide/plugins.1717603380.txt.gz · Last modified: 2024/06/05 18:03 by gaetan
