Personal Parent POM
Find a file
2016-05-31 14:42:50 +01:00
.mvn/wrapper Setup Maven Wrapper 2016-04-25 22:20:50 +01:00
.gitignore Initial Commit 2015-11-27 13:53:55 +00:00
.travis.yml .travis.yml: Select jdk8 for TravisCI 2016-01-07 12:53:15 +00:00
CHANGELOG CHANGELOG 2016-05-09 10:48:26 +01:00
checkstyle.xml Add selected rules from sevntu to checkstyle template 2016-05-31 14:42:50 +01:00
mvnw Setup Maven Wrapper 2016-04-25 22:20:50 +01:00
mvnw.cmd Setup Maven Wrapper 2016-04-25 22:20:50 +01:00
pom.xml Upgrade checkstyle to 6.19 2016-05-30 13:21:20 +01:00
README.md pom.xml: Allow the build directory to be overridden 2016-02-09 16:40:31 +00:00

KEMITIX-PARENT

This Maven Parent POM several preconfigured plugins.

Usage

Maven

<parent>
    <groupId>net.kemitix</groupId>
    <artifactId>kemitix-parent</artifactId>
</parent>

Maven Checkstyle Plugin

The Maven Checkstyle Plugin uses the latest version of the Checkstyle library (Release Notes).

Also available for you to use are the rules defined by Sevntu.

Your project must provide a checkstyle.xml file in it's root directory. See the Checkstyle Plugin homepage for sun_checks.xml and google_checks.xml examples. There is a modified version of sun_checks.xml bundled in the source jar as checkstyle.xml.

Your build will fail on any violations or errors found. You can modify your checkstyle.xml to suite your own needs.

Configuration

Ref checkstyle:check

  • configLocation: checkstyle.xml
  • consoleOutput: true
  • encoding: UTF-8
  • failOnViolation: true
  • failOnError: true
  • linkXRef: true

Maven Compiler Plugin

The Maven Compiler Plugin compiles your sources.

Configuration

Ref: compile:compile

  • showDeprecation: true
  • showWarnings: true
  • source: 1.8
  • target: 1.8

Maven Surefire Plugin

The Maven Surefire Plugin runs your Unit Tests.

Configuration

No configuration applied beyond the defaults.

Maven Failsafe Plugin

The Maven Failsafe Plugin runs your Integration Tests.

Runs its integration-test goal during the verify phase.

Configuration

No configuration applied beyond the defaults.

Maven PMD Plugin

The Maven PMD Plugin runs the PMD code analysis.

Runs its pmd and cpd goals during the verify phase.

Configuration

No configuration applied beyond the defaults.

Findbugs Maven Plugin

The Findbugs Maven Plugin runs the Findbugs code analysis.

Runs its check goal during the verify phase.

Configuration

No configuration applied beyond the defaults.

Jacoco Maven Plugin

The Jacoco Maven Plugin provides code coverage analysis after your tests have run.

Configuration

Classes

For each class not excluded the Lines Covered Ratio must be at least 50%.

For each class not excluded the Instructions Covered Ration must be at least 80%.

Excluded from analysis:

  • *Test - test classes

Maven Source Plugin

The Maven Source Plugin bundles your sources into a jar file ready for deployment.

Runs its jar-no-fork goal during the verify phase.

Configuration

No configuration applied beyond the defaults.

Maven Javadoc Plugin

The Maven Javadoc Plugin generates your html javadocs and bundles them into a jar file ready for deployment.

Runs its jar-no-fork goal during the verify phase.

Configuration

No configuration applied beyond the defaults.

Maven Deploy Plugin

The Maven Deploy Plugin uploads your artifacts to a remote repository.

Configuration

No configuration applied beyond the defaults.

Maven JXR Plugin

The Maven JXR Plugin produces cross-referenced HTML pages of your source code.

Configuration

No configuration applied beyond the defaults.

Highwheel Plugin

The Highwheel Plugin generates a report for packages and classes at target/highwheel/index.html that highlights where there are cyclic dependencies between packages and between classes.

Configuration

The plugin will analyse the project during the verify phase.

Digraph Dependency Plugin

The Digraph Dependency Plugin generates a DOT file diagram showing the dependencies between packages in a project.

Configuration

The plugin will generate the target/digraph.dot file during the verify phase.

The plugin will filter to packages within the net.kemitix package namespace.

Distribution Management

Remote repositories are provided for the Sonatype Nexus Snapshots and Nexus Release Repositories. See the OSSRH Guide for information on how to deploy your artifact the Maven Central through Sonatype.

Changing the Build Directory

If you want to change the build directory, e.g. from your settings.xml to an SSD or ram drive, then set the value of the kemitix.build.directory to your required locations. e.g. <properties> <kemitix.build.directory>/mnt/ramdrive/${project.groupId}/${project.artifactId}</kemitix.build.directory> </properties>