Versions Compared

Key

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

...

  • provided dependencies should be used only for APIs which are supplied by the run-time container.
  • compile dependencies should be used for all other modules whose APIs are referenced by the source code.
  • If a compile dependency is used by optional code in a project like java-support, the dependency should be compile but marked as optional. Client projects which require the optional functionality must manually include the missing transitive dependency with runtime scope if they do not already require it at compile scope.
  • If a module is required to be present at run time but is not referenced by the source code, it is a runtime scope dependency.
  • If a module is not required by the main source code but is required for testing, it is a test scope dependency.

Dependency updates

tbd.  The Dependencies can be updated when new versions become available during development. It is also sensible to perform a check for dependency updates of which we are not otherwise aware prior to a release.

To review the available dependency updates in a particular context (either the parent POM or a subordinate project which defines its own dependencies not managed by the parent project) the command of interest is:

Code Block
mvn versions:display-dependency-updates

...

Obviously critical subsystems (XML handling, beans, encoders) need further discussion.

As of 2020-01-30, for the Java 11 platform, the following exceptions can be noted:

DependencyCurrent VersionIgnoreReason
ch.qos.logback:*
1.2.31.3.0-alpha5latest stable
com.sun.activation:jakarta.activation
1.2.12.0.0-rc1latest stable
commons-collections:commons-collections
3.2.22004061620040616 is older
jakarta.activation:jakarta.activation-api
1.2.12.0.0-rc1latest stable
jakarta.json:jakarta.json-api
1.1.62.0.0-RC1latest stable
javax.servlet:javax.servlet-api
3.1.04.0.1stated requirement; part of EE7
org.glassfish:jakarta.json
1.1.62.0.0-RC1latest stable
org.glassfish.jaxb:jaxb-runtime
2.3.22.4.0-b180830.0438latest stable
org.hibernate:hibernate-core
5.4.10.Final6.0.0.Alpha4latest stable
org.ldaptive:ldaptive
1.3.02.0.0-RC1latest stable
org.slf4j:*
1.7.302.0.0-alpha1latest stable

Plugin Maintenance

The simplest way to find what is out of date is to run 

...