Mule Maven Plugin

Maven plugin to deploy Mule applications to different kinds of servers: Standalone (both Community and Enterprise), Clustered, Anypoint Runtime Manager and CloudHub. Main uses are running integration tests and deploying applications. Some of the features are: Download Mule Standalone from a Maven Repository and install it locally. Deploy a Mule application to a server. Undeploy a Mule application. Assemble a Mule cluster and deploy applications.

License

License

Categories

Categories

Maven Build Tools
GroupId

GroupId

org.mule.tools.maven
ArtifactId

ArtifactId

mule-maven-plugin
Last Version

Last Version

2.1
Release Date

Release Date

Type

Type

maven-plugin
Description

Description

Mule Maven Plugin
Maven plugin to deploy Mule applications to different kinds of servers: Standalone (both Community and Enterprise), Clustered, Anypoint Runtime Manager and CloudHub. Main uses are running integration tests and deploying applications. Some of the features are: Download Mule Standalone from a Maven Repository and install it locally. Deploy a Mule application to a server. Undeploy a Mule application. Assemble a Mule cluster and deploy applications.
Project URL

Project URL

https://github.com/mulesoft/mule-maven-plugin
Project Organization

Project Organization

MuleSoft Inc
Source Code Management

Source Code Management

https://github.com/mulesoft/mule-maven-plugin

Download mule-maven-plugin

How to add to project

<plugin>
    <groupId>org.mule.tools.maven</groupId>
    <artifactId>mule-maven-plugin</artifactId>
    <version>2.1</version>
</plugin>

Dependencies

compile (13)

Group / Artifact Type Version
org.apache.maven : maven-settings jar 3.0.4
org.apache.maven : maven-plugin-api jar 2.0
org.apache.maven : maven-artifact jar 2.0.9
org.codehaus.plexus : plexus-utils jar 3.0.8
org.apache.maven : maven-project jar 2.0
org.codehaus.plexus : plexus-archiver jar 2.3
org.mule : mule-core jar 3.7.0
org.mule.tests : mule-tests-infrastructure jar 3.7.0
org.codehaus.groovy : groovy-all jar 2.0.1
org.glassfish.jersey.core : jersey-client jar 2.19
org.glassfish.jersey.media : jersey-media-moxy jar 2.19
org.glassfish.jersey.media : jersey-media-multipart jar 2.19
org.json : json jar 20140107

provided (1)

Group / Artifact Type Version
org.apache.maven.plugin-tools : maven-plugin-annotations jar 3.2

test (5)

Group / Artifact Type Version
org.apache.maven.plugin-testing : maven-plugin-testing-harness jar 2.0
junit : junit jar 4.11
org.mockito : mockito-all jar 1.8.5
org.hamcrest : hamcrest-library jar 1.3
com.jayway.awaitility : awaitility-groovy jar 1.6.5

Project Modules

There are no modules declared in this project.

Mule Artifact Tools

The project contains all the modules required to create Mule artifacts and to deploy them to the different environments of the Anypoint Platform.

Modules

  • mule-classloader-model

  • mule-packager

  • mule-deployer

  • mule-maven-plugin

  • mule-artifact-it

mule-classloader-model

Contains the abstract model which describes the descriptor files used when generating a repository for heavy weight packages

mule-packager

Contains the Java API that allows you to create the different Mule artifacts:

  • mule-application

  • mule-policy

  • mule-domain

  • mule-domain-bundle

It also contains a set of validators to ensure that the artifact can be generated properly

mule-deployer

Contains the Java API that allows you to deploy the Mule artifacts to the different environments

mule-maven-plugin

Is the Maven Plugin that provides Maven integration. Through it you can package different Mule artifacts and deploy them to both Nexus Servers and the different Anypoint Environments.

mule-artifact-it

Contains the integration tests for the modules:

  • mule-packager

  • mule-deployer

  • mule-maven-plugin

Debugging

In case you run into problems while using the plugin and wants to try find the cause by yourself, you can easily debug the plugin using mvnDebug. These are the steps:

  • Clone this project;

  • In the project base folder, checkout to the tag that corresponds to the version of the mule project that you are building/deploying;

  • Then, run

mvn clean install
  • In your IDE, create a new remote debug configuration and set the port to 8000;

  • Run the command that failed and that you want to debug, but replace mvn by mvnDebug (check the tips session below);

  • Place a breakpoint in one of the mojos of the mule-maven-plugin module (that should be a good starting point);

  • Start debugging.

Tips:

To find the right tag, run

git tag -l
  • And then run

git checkout <tag_name>

Also, if the build failed when invoking (as an example)

mvn clean deploy -DmuleDeploy

You should debug by running

mvnDebug clean deploy -DmuleDeploy
org.mule.tools.maven

Mulesoft

Building awesome software that's connecting the world's applications, data, and devices.

Versions

Version
2.1