Chapter 11. Building a FAB
Abstract
A FAB is essentially a JAR file built using Maven, where the Maven
pom.xml
file declares the complete set of dependencies for the JAR.
11.1. Generating a FAB Project
Generating FAB projects with Maven archetypes
To help you get started quickly, you can invoke a Maven archetype to generate the initial outline of a Maven project (a Maven archetype is analogous to a project wizard). Because FABs do not require any special configuration (apart from the presence of a
pom.xml
file, which is always present in a Maven-generated JAR), you can use almost any Maven archetype, as long as the generated Maven project has the jar
packaging type.
Archetypes
The following Maven archetypes are useful for generating Apache Camel projects:
camel-archetype-java
- Demonstrates a route defined using the Java DSL.
camel-archetype-blueprint
- Demonstrates a route defined using the XML DSL in an OSGi blueprint file.
camel-archetype-activemq
- Demonstrates how to use a message broker in a route.
camel-archetype-component
- Demonstrates how to define a custom Apache Camel component.
camel-archetype-blueprint archetype
For example, consider an archetype for building an Apache Camel project. The
camel-archetype-blueprint
archetype creates a project that demonstrates a simple Apache Camel route written in the XML DSL using the Blueprint injection framework. To generate a Maven project with the coordinates, GroupId:
ArtifactId:
Version, enter the following command:
mvn archetype:generate -DarchetypeGroupId=org.apache.camel.archetypes -DarchetypeArtifactId=camel-archetype-blueprint -DarchetypeVersion=2.12.0.redhat-610379 -DgroupId=GroupId -DartifactId=ArtifactId -Dversion=Version
Note
The arguments to the
mvn
command are shown on separate lines purely for the sake of readability. When you are entering the command at a command prompt, you must ensure that all of the parameters are on the same line.
Building the FAB
The archetype creates a project in a new directory whose name is that of the specified artifact ID, ArtifactId. To build the FAB defined by the new project, open a command prompt, go to the project directory (that is, the directory containing the
pom.xml
file), and enter the following Maven command:
mvn install
The effect of this command is to compile all of the Java source files, to generate a FAB JAR under the ArtifactId
/target
directory, and then to install the generated JAR in the local Maven repository.