7.2. Using the Plug-In to Deploy a Maven Project
Prerequisites
You must ensure the following prerequisites are satisfied before attempting to run the Fabric8 Maven plug-in:
- Your Maven
~/.m2/settings.xml
file is configured as described in Section 7.1, “Preparing to Use the Plug-In”. - A JBoss Fuse container instance is running on your local machine (alternatively, if the container instance is running on a remote host, you must configure the plug-in's
jolokiaUrl
property appropriately).
Running the plug-in on any Maven project
To use the Fabric8 plug-in to deploy any maven project into a fabric profile, enter the following Maven command:
mvn io.fabric8:fabric8-maven-plugin:1.2.0.redhat-630187:deploy
Adding the plug-in to a Maven POM
If you add the Fabric8 plug-in to your
pom.xml
file as follows:
<plugins> <plugin> <groupId>io.fabric8</groupId> <artifactId>fabric8-maven-plugin</artifactId> <version>1.2.0.redhat-630187</version> <configuration> <profile>testprofile</profile> <version>1.2</version> </configuration> </plugin> </plugins>
Where the
plugin/configuration/version
element specifies the Fabric8 version of the target system (which is not necessarily the same as the version of the Fabric8 Maven plug-in).
You can now use the following more concise Maven goal:
mvn fabric8:deploy
What does the plug-in do?
When you deploy your project to a Fabric profile with this plug-in, the plug-in does the following:
- Uploads any artifacts into the fabric's maven repository,
- Lazily creates the Fabric profile or version you specify,
- Adds/updates the maven project artifact into the profile configuration,
- Adds any additional parent profile, bundles or features to the profile.
Example
You can try out the plug-in with one of the JBoss Fuse
quickstart
examples, as follows:
cd InstallDir/quickstarts/cxf/rest mvn io.fabric8:fabric8-maven-plugin:1.2.0.redhat-630187:deploy
You should see a new profile created on the quickstart profile page, which should have a bundle and some features (click the Bundle tab and then the Feature tab).