Now that Jetty 12.0.1 is released to Maven Central, we’ve started to get a few questions about where some artifacts are, or when we intend to release them (as folks cannot find them).
Things have change with Jetty, starting with the 12.0.0 release.
First, is that our historical versioning of <servlet_support>.<major>.<minor>
is no longer being used.
With Jetty 12, we are now using a more traditional <major>.<minor>.<patch>
versioning scheme for the first time.
Also new in Jetty 12 is that the Servlet layer has been separated away from the Jetty Core layer.
The Servlet layer has been moved to the new Environments concept introduced with Jetty 12.
Environment | Jakarta EE | Servlet | Jakarta Namespace | Jetty GroupID |
ee8 | EE8 | 4 | javax.servlet | org.eclipse.jetty.ee8 |
ee9 | EE9 | 5 | jakarta.servlet | org.eclipse.jetty.ee9 |
ee10 | EE10 | 6 | jakarta.servlet | org.eclipse.jetty.ee10 |
This means the old Servlet specific artifacts have been moved to environment specific locations both in terms of Java namespace and also their Maven Coordinates.
Example:
Jetty 11 – Using Servlet 5
Maven Coord: org.eclipse.jetty:jetty-servlet
Java Class: org.eclipse.jetty.servlet.ServletContextHandler
Jetty 12 – Using Servlet 6
Maven Coord: org.eclipse.jetty.ee10:jetty-ee10-servlet
Java Class: org.eclipse.jetty.ee10.servlet.ServletContextHandler
We have a migration document which lists all of the migrated locations from Jetty 11 to Jetty 12.
This new versioning and environment features built into Jetty means that new major versions of Jetty are not as common as they have been in the past.