The java.xml.bind și java.activation au fost eliminate din JDK 11. Aceste module includ următoarele pachete:
javax.activationjavax.xml.bindjavax.xml.bind.annotationjavax.xml.bind.annotation.adaptersjavax.xml.bind.attachmentjavax.xml.bind.helpersjavax.xml.bind.utilAceastă 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.