Maven is a project management tool that encompasses a Project Object Model (POM), a set of standards, a project lifecycle, a dependency management system, and logic for executing plug-in goals at defined phases in a lifecycle.
The FUSE ESB OSGi tooling uses the Maven bundle plug-in from Apache Felix. The bundle plug-in is based on the bnd tool from Peter Kriens.
The Maven bundle plug-in automates the construction of OSGi bundle manifests by
introspecting the contents of the classes being packaged in the bundle. Using the
knowledge of the classes contained in the bundle, the plug-in calculates the proper
values to populate the Import-Package and
Export-Package properties in the bundle manifest. The
plug-in also has default values used for other required properties in the bundle
manifest.
Download and install Maven. See the Apache Maven Project web site for the downloadable files and installation instructions.
After installing Maven, you must change the following settings in your operating system environment:
Set the M2_HOME environment variable to point to the
Maven root directory.
Add the Maven bin directory to your PATH:
On Windows: %M2_HOME%\bin
On UNIX: $M2_HOME/bin
Creating a Maven project requires you to create a directory and a POM. The POM is an XML file containing information about the project and configuration details. Configuration information can include project dependencies, plug ins or goals to be executed, project versions, and so on. Maven uses the configuration information in this file to build the project.
The POMs, along with dependencies that are downloaded and artifacts that are generated when you run Maven commands, are stored on your system in a Maven repository. This repository is located:
On Windows, in:
...\Documents and Settings\username\.m2\repository\
On UNIX, in: .../home/username/.m2/repository/
See the Apache Maven documentation for more information.
See Understanding the Example in
See Packaging an Application in