Overview
Atlassian Sourcetree is a free Git and Mercurial client for Windows.
Atlassian Sourcetree is a free Git and Mercurial client for Mac.
Introduction
This module provides a maven parent-pom which can be used to defined artifacts which employ a couple of very useful maven configurations. Out of the box, you get:
-
A maven-enforcer-plugin configuration which will require proper dependency management.
-
A maven-compiler-plugin configuration for java 6, but which will be noisy with warnings so you can fix them.
-
A maven profile called "paranoid" which will also then enable:
-
The maven-pmd-plugin with rules defined in by the pmd-configuration artifact, and which will fail the build if violations are present. This plugin also runs PMD's copy and paste detection (CPD) check.
-
The findbugs-maven-plugin which will run at its highest threshold and attempt to find bugs, failing the build if it does.
-
The cobertura-maven-plugin which will fail the build if test coverage (line or branch) is less than 75% across any of: an individual class; a package; or the entire module.
-
Usage
Until this artifact is hosted somewhere centrally, you'll need to check it out, and install it locally via the standard "mvn install" command. Something like:
$ mvn install [INFO] Scanning for projects... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building common-parent 0.1-SNAPSHOT [INFO] ------------------------------------------------------------------------ ... [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 2.742s [INFO] Finished at: Mon May 21 21:21:52 EST 2012 [INFO] Final Memory: 4M/81M [INFO] ------------------------------------------------------------------------
Once that is done, you can then use this module's artifacts as the parent coordinates for your project:
<parent> <groupId>ph.hum</groupId> <artifactId>common-parent</artifactId> <version>0.1-SNAPSHOT</version> </parent>