Eu estou tentando migrar uma aplicação de Java 8 a Java 11. Quando eu tentar construir o projeto em IntelliJ eu recebo um package sun.util does not exist
erro?
Algumas ideias sobre o que está acontecendo?
Obrigado!
Pacotes com.sun.*
e sun.*
segurar coisas internas, e não deve ser usado por de terceiros aplicações (como o seu provavelmente) no caso geral.
Uma vez que em java 9 foi introduzido o sistema de módulo, agora Oracle "proteger" esses pacotes, mesmo em tempo de compilação.
Assim, a maneira óbvia é a de se livrar dessa dependência em seu código. Por que eles protegem? Porque eles deixam o direito de se mudar essas coisas, sua consideradas interna como eu disse.
Adição:
Você pode tentar (Eu não recomendo) para aplicar algumas ferramentas "Resolução" encontrada em este excelente artigo (Leia "Illegal acesso às APIs interno" capítulo), mas como o autor deste artigo afirma, a maneira mais simples é parar de usar estes pacotes no seu código, então considerá-lo como a primeira aposta.