Er pakken com.sun.net.httpserver standard?
Dette er nu klart en offentlig API
1
. Fra Java 11 er der et modul (jdk.httpserver), der eksporterer com.sun.net.httpserver
og com.sun.net.httpserver.spi
pakker og 17 offentlige klasser.
Javadocs er offentliggjort (https://docs.oracle.com/en/java/javase/11/docs/api/jdk.httpserver/com/sun/net/httpserver/package-summary.html), og der er ingen synlige forbehold i pakkeresuméet for at sige, at disse API'er kun er beregnet til intern brug.
Mens jdk.httpserver
er standardiseret, er det ikke garanteret
2
at være til stede i alle (Java 11+) Java SE-implementeringer. Som oversigtssiden siger:
Dette dokument er opdelt i to sektioner:
Java SE:Java Platform, Standard Edition (Java SE) API'er definerer kerne Java-platformen til generel databehandling. Disse API'er er i moduler, hvis navne starter med java
.
JDK:Java Development Kit (JDK) API'er er specifikke for JDK og vil ikke nødvendigvis være tilgængelige i alle implementeringer af Java SE-platformen. Disse API'er er i moduler, hvis navne starter med jdk
.
Modulet, vi taler om, falder ind under den anden kategori.
1 - De gamle (inkonsistente) pakkenavnekonventioner om com.sun.*
og så videre er fremsat af Java 9+-moduler og deres tilhørende eksplicitte synlighedskontrolmekanismer.
2 - Oracle og de fleste andre udgivere af Java 11+ leverer kun JDK-distributioner, så denne advarsel er stort set uvidende.