Skip to content
This repository has been archived by the owner on Dec 11, 2021. It is now read-only.

cvut/maven-support

Repository files navigation

Maven Parents

This repository contains parent POMs for FIT CTU’s projects. All faculty projects should use one of these parents.

root-parent

Maven Central Dependency Status

This is the root parent with basic plugins and profiles. It automatically checks classpath for duplicate classes with duplicate-finder, checks Java code with checkstyle (rules are defined in checkstyle.xml), runs integration tests, collects metrics for code coverage analysis (when ci profile enabled), deploys sources and JavaDocs in deploy phase etc.

It’s preconfigured to deploy artifacts to the faculty repository (more info), but it also provides profile bintray-deploy for deploying artifacts to Bintray / jCenter (a pain-free gateway to Maven Central) and sonatype-deploy for deploying artifacts to Sonatype OSS (a painful gateway to Maven Central).

Properties

java.version

Version of JDK to compile sources for (default is 1.7).

slf4j.version

Version of slf4j-api to use.

Profiles

ci

General profile for CI to analyze code coverage (uses JaCoCo). It should be activated automatically on CI environments.

travis-ci

Profile for Travis CI to submit code coverage to Coveralls. This profile is for public projects only. It’s activated automatically on Travis.

bintray-deploy

Profile for deploying artifacts to Bintray.

sonatype-deploy

Profile for deploying artifacts to Sonatype OSS.

Usage

Add this to the top of your POM:

<parent>
    <groupId>cz.cvut.fit.maven</groupId>
    <artifactId>root-parent</artifactId>
    <version>2.3.1</version>
</parent>

If you want to use Travis with Coveralls, put .travis.yml to the root of your repository:

language: java
sudo: false
jdk:
  - openjdk7
  - oraclejdk8
script:
  - 'mvn verify -B'
after_success:
  - 'mvn jacoco:report coveralls:jacoco'

groovy-parent

Maven Central Dependency Status

inherits from root-parent

Parent for projects that uses Groovy.

Properties

groovy.version

Version of groovy to use.

groovy-compiler.version

Version of groovy-eclipse-compiler to use.

groovy-batch.version

Version of groovy-eclipse-batch to use.

Usage

Add this to the top of your POM:

<parent>
    <groupId>cz.cvut.fit.maven</groupId>
    <artifactId>groovy-parent</artifactId>
    <version>2.3.1</version>
</parent>

If you want to use Groovy just in tests, not a production code, then redefine the groovy’s dependency scope:

<dependencies>
    <dependency>
        <groupId>org.codehaus.groovy</groupId>
        <artifactId>groovy</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>

groovy-lombok-parent

Maven Central Dependency Status

inherits from groovy-parent

Parent for projects that uses Groovy (mainly for tests) and Lombok annotation processor.

Properties

lombok.version

Version of lombok to use.

Usage

Add this to the top of your POM:

<parent>
    <groupId>cz.cvut.fit.maven</groupId>
    <artifactId>groovy-lombok-parent</artifactId>
    <version>2.3.1</version>
</parent>

License

This project is licensed under MIT license.

About

Parent POMs for FIT CTU’s projects.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published