Note:
mirth-plugin-maven-plugin-kt
is a successor/continuation to the previous mirth-plugin-maven-plugin. It's a rewrite in, as you might guess, Kotlin.
A maven plugin to simplify and automate NextGen Connect plugin development.
pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
...
<repositories>
<repository>
<id>repsy</id>
<url>https://repo.repsy.io/mvn/kpalang/default</url>
</repository>
</repositories>
...
<dependencies>
<dependency>
<groupId>com.kaurpalang</groupId>
<artifactId>mirth-plugin-maven-plugin</artifactId>
<version>3.0.0</version>
</dependency>
</dependencies>
...
<pluginRepositories>
<pluginRepository>
<id>repsy-default</id>
<url>https://repo.repsy.io/mvn/kpalang/default</url>
</pluginRepository>
</pluginRepositories>
</project>
See Sample project on GitHub
Annotated class will be generated as a <string>
entry.
<serverClasses>
<string>com.kaurpalang.mirthpluginsample.server.ServerPlugin</string>
<string>com.kaurpalang.mirthpluginsample.server.ServerPlugin2</string>
</serverClasses>
Annotated class will be generated as a <string>
entry.
<clientClasses>
<string>com.kaurpalang.mirthpluginsample.client.ClientPlugin</string>
<string>com.kaurpalang.mirthpluginsample.client.ClientPlugin2</string>
</clientClasses>
Annotated class will be generated as a <apiProvider>
entry.
<apiProvider name="com.kaurpalang.mirthpluginsample.shared.ApiProviderSample" type="SERVLET_INTERFACE"/>
All libraries inside pluginroot/libs/runtime/{type}
are packaged into the .zip
archive into libs
directory.
<library path="libs/sample-external.jar" type="{type}"/>
Purpose is to generate a file to store all found classes before annotation processing.
Purpose is to generate the actual plugin.xml file.
Parameter | Description | Default |
---|---|---|
<name> | Plugin's name | default_name |
<author> | Plugin's author | default_author |
<pluginVersion> | Plugin version | default_plugin_version |
<mirthVersion> | Mirth versions this plugin is compatible with | default_mirth_version |
<url> | Plugin's website | blank |
<description> | Plugin's description | blank |
<path> | The name of the directory that will be extracted into Mirth's extensions directory | default_path |
<pluginXmlOutputPath> | Where to put the generated plugin.xml |
/plugin.xml |