JEP proposed to target JDK 18: 408: Simple Web Server
Alan Bateman
Alan.Bateman at oracle.com
Tue Oct 12 07:52:01 UTC 2021
On 11/10/2021 22:54, Joe Darcy wrote:
>
> There are distinct evolution and compatibility policies for several
> categories of APIs associated with the JDK, several broad buckets:
>
> * Java SE APIs (approximately public and protected elements of the
> java.* modules, which include the java.* and javax.* packages): These
> APIs have a strong compatibility policy, but can be removed from the
> platform after going through the deprecation-for-removal process.
>
> * official JDK APIs (approximately public and protected elements of
> the jdk.* modules): similar compatibility policy to Java SE APIs, but
> there is more leeway on the timing and size of changes. For example,
> it is more likely to have API changes to JDK APIs in an update release
> (rather than a feature release) compared to changes in Java SE APIs
> (since changing a Java SE in a maintenance release would require a
> maintenance review of the platform specification).
Just to add to Joe's mail is that moving to a modular platform in Java 9
has eliminated a lot of the historical confusion over JDK-specific APIs.
In particular, the javadoc, e.g. Java 17 [1], you can quickly see the
JDK-specific modules and the API packages that they export. In the case
of the HTTP server the module is jdk.httpserver. The API packages that
is exported have been documented/supported APIs since JDK 6. One of
those API packages is the SPI for developing alternative implementation
and it look like Jetty has had an implementation of that SPI for several
releases so I suspect Jetty has been compiling against this API for a
long time.
-Alan
[1] https://docs.oracle.com/en/java/javase/17/docs/api/index.html
More information about the jdk-dev
mailing list