Home

Awesome

The pom-scijava-base project is a Maven POM that serves as the base for all Maven-based SciJava software, including:

FijiImageJ2ImgLib2KNIMELOCISCIFIOSciJavaFLIMLibVirtual Cell
FijiImageJ2ImgLib2KNIMELOCISCIFIOSciJavaFLIMLibVirtual Cell

pom-scijava-base vs. pom-scijava

It is encouraged that you not extend this POM directly, and instead use pom-scijava as parent.

pom-scijava-basepom-scijava
"Low level" base POM, without dependency version management. Extend pom-scijava-base only if you are a Maven expert, and have good reasons for doing so.Friendly base POM for SciJava software, including dependency version management. Extend pom-scijava to inherit the unified SciJava Bill of Materials: component versions which have been tested to work together.

See these examples for guidance:

Enforcer rules declared in this parent

The pom-scijava-base parent POM declares several enforcer rules which we believe make SciJava-based projects more reproducible and more consistent:

The full set of Enforcer rules as of pom-scijava-base version 14.0.0 can be seen here.

How to override a field with an "empty" value

For some projects, you may have "empty" metadata fields, and you may be unsure how best to override those values accordingly. The most common scenarios are:

Getting help with Maven

For more information about Maven, see: