S

Super POM

A parent POM for java projects

Name Last Update
src/site Loading commit data...
.gitignore Loading commit data...
CHANGELOG Loading commit data...
LICENSE Loading commit data...
pom.xml Loading commit data...
readme.md Loading commit data...

Maven parent pom

This is a project designed to make building deployable maven JARs easier. It sets up the requirements for central for your project.

What does it do?

  • Java build version is set at 1.8
  • The release profile (mvn -P release package) will build javadoc and source jars
  • The release profile will prompt you to do GPG signing
  • Sets branding related values (organisation, urls, etc...)
  • Sets the project licence to GPLv3
  • Configures the build for OSSRH deployment

What should I change?

If you're using this for your project - there are a few properties you should change:

What should I change?

  • name - set to the name of your project
  • description - set to a brief description of your project
  • url - set this to your git repo or microsite
  • developers - set this to you (by default it's webpigeon)

Usage

Include the following as an element in your pom.xml file:

<!-- Use FOSS Galaxy's parent POM to do most of the build setup for us -->
<parent>
    <groupId>com.fossgalaxy.common</groupId>
    <artifactId>parent-pom</artifactId>
    <version>0.1</version>
</parent>

Deployment

mvn release:prepare
# mvn release:rollback
mvn release:perform

Branding

This POM makes the assumption that it's being used for FOSS Galaxy projects, if your project is on our Gitlab then feel free to leave as is. We might make an unbranded/whitelabel version available in future but the branded one is most useful right now.

The following branding is set:

  • site.xml - links to forum, gitlab and the website
  • pom.xml - org set to FOSS Galaxy