Main Page

From Evolvis Maven Project Base (inactive) Wiki
Jump to: navigation, search

Contents

evolvis Maven Base Project

The evolvis Maven Base Project (eMBP) tries to make your life easier when you're doing Java development on evolvis.org by providing you with Maven archetypes that automatically set your project up with the most common repositories, dependencies and configuration for source code management, issue tracking and continuous integration.

Common features

General Usage of the base POM

If you want to use the base POM in an existing project to have a number of useful defaults and libraries, you can do so by adding the following to your root POM:

<parent>
   <groupId>org.evolvis</groupId>
   <artifactId>evolvis-mvn-base</artifactId>
   <version>XXXXXX</version>
</parent>

XXXXXX: Find the latest version here: (look for the latest evolvis-mvn-base-xxx): https://evolvis.org/scm/viewvc.php/evo-mvn-base/tags/

Take a look at the POM to get an overview of what it currently provides at https://evolvis.org/scm/viewvc.php/evo-mvn-base/trunk/evolvis-mvn-base/pom.xml?view=markup

Using the base POM through archetypes

Creating a project

In Eclipse

You need to have the Maven Eclipse Integration plugin installed. Create a new "Maven Project", deselect "Create a simple project" so Eclipse will ask you about the archetype to use. Eclipse will then prompt you for the basic project properties (like "groupId", "artifactId", etc.) and all the other properties marked as required in the archetype.

When asked for an archetype catalog enter http://maven-repo.evolvis.org/releases/archetype-catalog.xml

On the command line

Executing

mvn archetype:generate -DarchetypeCatalog=http://maven-repo.evolvis.org/releases/archetype-catalog.xml

on a command line will present a list with all available archetypes on evolvis.org. Enter the number of the archetype you want to used and Maven will ask you to provide the properties for the selected archetype.

Living with a project generated from an eMBP archetype

All eMBP archetypes depend on a common parent POM which provide repositories, common libraries and build plugin configuration. It also defines versions for all libraries and Maven plugins it includes. This parent POM is defined in your project POM with a strict version dependency. You can override all the versions and settings if you need to.

Available Archetypes

evolvis-java-archetype

The evolvis-java-archetype provides a general template for a Java6 project without any dependencies on a specific technology. Use this as a starting point if there is no archetype yet which is tailored to your specific needs.

mvn archetype:generate -DarchetypeCatalog=http://dev-repo.tarent.de/releases/archetype-catalog.xml 

Configuration

projectName
The human-readable name of the project, also used in license files
owner
The author or owning company of the project, also used in license files
email
The mail address to contact about the project, also used in license files
evolvisProjectUnixName
The unix name of the evolvis project the Maven project belongs to. Used for resolving the SCM path
evolvisGroupId
The internal numeric ID used by evolvis to identify this project (appears in tracker URLs, e.g.). Used to identify the project's tracker for issueManagement
scmUserName
The username to be used for writing to the SCM (e.g. for tagging, if maven-release-plugin is used)