Plugin Details
This report describes goals, parameters details, requirements and sample usage of this plugin.
Goals
Goals available for this plugin:
| Goal | Description |
|---|---|
| ivy:compileProject | Compiles an ivy Project with an ivyEngine. |
| ivy:deploy-to-engine | Deploys a single project (iar) or a full application (set of projects as zip) to a running Axon Ivy Engine. Command line invocation is supported. Local engine (using DIRECTORY deploy method): mvn com.axonivy.ivy.ci:project-build-plugin:12.0.0:deploy-to-engine -Divy.deploy.file=myProject.iar -Divy.deploy.engine.dir=c:/axonivy/engine -Divy.deploy.engine.app=Portal Remote Engine (using HTTP deploy method): mvn com.axonivy.ivy.ci:project-build-plugin:12.0.0:deploy-to-engine -Divy.deploy.file=myProject.iar -Divy.deploy.method=HTTP -Divy.deploy.server.id=AxonIvyEngine -Divy.deploy.engine.url=http://ivyhost:8080/ivy -Divy.deploy.engine.app=portal |
| ivy:deploy-to-test-engine | Deploys a set of test projects (iar) or a full application (set of projects as zip) to a running test engine. By default the IAR of the current project plus all declared IAR dependencies will be deployed to the test engine. |
| ivy:help | Display help information on project-build-plugin.
Call mvn ivy:help -Ddetail=true -Dgoal=<goal-name> to display parameter details. |
| ivy:installEngine | Downloads an Axon Ivy Engine from the web if it does not yet exists in the correct version.
Command line invocation is supported. E.g. mvn com.axonivy.ivy.ci:project-build-plugin:12.0.0:installEngine -Divy.engine.directory=c:/axonviy/engine -Divy.engine.version=12.0.0 -Divy.engine.os.arch=Linux_x64 |
| ivy:ivy-integration-test-properties | Shares crucial test engine internals with the forked JVM that runs tests. The property being set is called |
| ivy:ivy-resources-properties | Set the "project.build.sourceEncoding" property to "UTF-8" for the maven-resource plugin, if not manually defined. |
| ivy:ivy-test-properties | Shares the classpath of the built ivy project and it's engine as public property and tries to auto-configure 'maven-surefire-plugin' to use this classpath. |
| ivy:maven-dependency | Copy maven dependencies to a specific folder.
To reduce the size of your ivy archives, make sure that your dependencies are configured correctly:
|
| ivy:maven-dependency-cleanup | Delete copied maven dependencies in the lib/mvn-deps folder. |
| ivy:pack-iar | Packs the compiled project as ivy-archive (IAR). |
| ivy:share-engine-core-classpath | Shares the Engine core classpath with the property: ivy.engine.core.classpath. |
| ivy:start-test-engine | Starts the Axon Ivy Engine for integration testing.
After starting the engine, this goal provides the url of the engine as property
|
| ivy:stop-test-engine | Stops the Axon Ivy Engine after integration testing |
| ivy:test-compile | Compiles the test sources. |
| ivy:validate | Validates that only one version of the project-build-plugin is active in one maven reactor. |
System Requirements
The following specifies the minimum requirements to run this Maven plugin:
| Maven | 3.9.8 |
| JDK | 21 |
System Requirements History
The following specifies the minimum requirements to run this Maven plugin for historical versions:
| Plugin Version | Maven | JDK |
|---|---|---|
| from 12.0.0 to 13.2.0 | 3.9.8 | 21 |
| from 10.0.0 to 11.3.0 | 3.6.3 | 17 |
| from 9.4.0 to 9.4.1 | 3.1 | 17 |
| from 8.0.0 to 9.3.2 | 3.1 | 11 |
| from 6.0.3 to 7.4.0 | 3.1 | 8 |
| from 0.0.4 to 6.0.2 | - | 8 |
Usage
You should specify the version in your project's plugin configuration:
<project>
...
<build>
<!-- To define the plugin version in your parent POM -->
<pluginManagement>
<plugins>
<plugin>
<groupId>com.axonivy.ivy.ci</groupId>
<artifactId>project-build-plugin</artifactId>
<version>12.0.14-SNAPSHOT</version>
</plugin>
...
</plugins>
</pluginManagement>
<!-- To use the plugin goals in your POM or parent POM -->
<plugins>
<plugin>
<groupId>com.axonivy.ivy.ci</groupId>
<artifactId>project-build-plugin</artifactId>
</plugin>
...
</plugins>
</build>
...
</project>
For more information, see "Guide to Configuring Plug-ins"
