Chapter 3. Maven Dependencies

Apache Maven is a distributed build automation tool used in Java application development to build and manage software projects. Apart from building, publishing, and deploying capabilities, using Maven for your JBoss BRMS and JBoss BPM suite projects ensures the following:
  • The build process is easy and a uniform build system is implemented across projects.
  • All the required jar files for a project are made available at compile time.
  • A proper project structure is set up.
  • Dependencies and versions are well managed.
  • No need for additional build processing, as Maven builds output into a number of predefined types, such as jar and war.

3.1. Maven Repositories

Maven uses repositories to store Java libraries, plug-ins, and other build artifacts. These repositories can be local or remote. JBoss BRMS and JBoss BPM suite products maintain local and remote maven repositories that you can add to your project for accessing the rules, processes, events, and other project dependencies. You must configure Maven to use these repositories and the Maven Central Repository in order to provide correct build functionality.
When building projects and archetypes, Maven dynamically retrieves Java libraries and Maven plug-ins from local repositories or downloads then from remote repositories. This promotes sharing and reuse of dependencies across projects.