Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • mandatory: packaging is maven-plugin 
  • recommended: lock down the maven-plugin-tools plugin version (as Maven you use will probably provide you old version, also, without this, your build would depend on Maven version, as it relies on lifecycle mapping provided by Maven tiself)otherwise you depend on version that Maven brings, your build is not reproducible).
  • recommended: the "required" (minimal) Maven version to run within (this is usually same as Maven version you build against) in POM as project/prerequisites/maven  field.
  • recommended: the Maven provided bits should be put in provided scope. Recent maven-plugin-plugin versions will warn you about this.
  • mandatory: Maven declare needed dependencies (, minimally required are org.apache.maven:maven-plugin-api  and org.apache.maven.plugin-tools:maven-plugin-annotations (to be able to annotate your Mojos, all the older ways like Javadoc taglets are being deprecated). 

We can already see, that we have at least two repeating versions, so they are "potential" properties to lessen duplication:

...