Modulele java.xml.bind şi java.activation au fost înlăturate din JDK 11 (Implementarea personalizată)

The java.xml.bind și java.activation au fost eliminate din JDK 11. Aceste module includ următoarele pachete:

Această regulă semnalează aplicaţiile care utilizează pachetele listate anterior şi împachetează implementarea JAXB proprie. Anterior, o implementare JAXB se putea baza ca API-urile listate mai sus să fie accesibile din JDK. Dar, începând cu JDK 11, aceste API-uri nu mai sunt accesibile.

Aplicaţiile care împachetează propria implementare JAXB vor trebui să actualizeze implementarea JAXB împachetată cu o versiune compatibilă Java 11 care împachetează API-urile înlăturate împreună cu implementarea.

O altă soluţie este comutarea la implementarea JAXB implicită pentru Liberty. Acest lucru poate fi realizat prin adăugarea jaxb-2.2 caracteristică a Liberty server.xml fişier de configurare. În plus, trebuie înlăturate toate implementările JAXB împachetate anterior în aplicaţie pentru a evita probleme legate de încărcarea claselor.

The schemagen și xjc au fost eliminate și din JDK 11. Aceste instrumente sunt disponibile în Liberty bin/jaxb al instalării Liberty.

Soluția automată oferită de regula generală Java SE 11 actualizeazăjavax.xml.bind și javax.activationmodulele din dependențele aplicației pentru a se asigura că acestea nu sunt incluse în aplicație. În majoritatea cazurilor, acest remediu va rezolva această problemă și va preveni problemele de încărcare a clasei. Copiați configurația personalizată pe fișierul de build al aplicației pentru a activa automatizarea corectării.

Pentru informaţii suplimentare despre modificările JDK 11, vedeţi Removal of Java EE and CORBA Modules.