Os módulos java.xml.bind e java.activation foram removidos do JDK 11 (implementação customizada)

A java.xml.bind e java.activation foram removidos do JDK 11. Esses módulos incluíam os pacotes a seguir:

Essa regra sinaliza aplicativos que usam qualquer um dos pacotes listados anteriormente e empacotam sua própria implementação de JAXB. Anteriormente, uma implementação de JAXB poderia contar com que as APIs listadas anteriormente estivessem acessíveis a partir do JDK. No entanto, iniciando no JDK 11, essas APIs não estão mais acessíveis.

Os aplicativos que empacotam sua própria implementação JAXB precisarão atualizar sua implementação de JAXB empacotada com uma versão compatível com o Java 11 que empacota as APIs removidas juntamente com a implementação.

Outra solução é alternar para a implementação do JAXB padrão do Liberty. Isso pode ser feito adicionando o jaxb-2.2 para o recurso Liberty server.xml da VMM. Além disso, qualquer implementação JAXB anteriormente empacotada no aplicativo deve ser removida para evitar problemas de carregamento de classe.

A schemagen e o xjc também foram removidas do JDK 11. Essas ferramentas estão disponíveis na seção Liberty bin/jaxb da instalação do site Liberty.

A correção automática fornecida pela regra geral do Java SE 11 atualiza ojavax.xml.bind e javax.activationmódulos nas dependências do aplicativo para garantir que eles não sejam empacotados no aplicativo. Na maioria dos casos, essa correção resolverá esse problema e evitará problemas de carregamento de classes. Copie a configuração customizada para seu arquivo de construção do aplicativo para ativar a automação de correção.

Para obter mais informações sobre as mudanças do JDK 11, consulte Remoção dos módulos Java EE e CORBA.