exceção javac, Java 8

0

Na semana passada, instalei o Oracle Java 8 com os seguintes comandos:

sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

Tudo parecia estar bem (continuei usando meu sistema normalmente, não posso dizer exatamente o que fiz durante a semana). Agora, quando executo java -version , obtenho

java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)

No entanto, agora, quando executo javac -version , obtenho

/usr/lib/jvm/java-8-oracle/jre/lib/rt.jar: invalid LOC header (bad signature)
Exception in thread "main" java.lang.NoClassDefFoundError: javax/annotation/processing/ProcessingEnvironment
    at com.sun.tools.javac.Main.compile(Main.java:54)
    at com.sun.tools.javac.Main.main(Main.java:42)
Caused by: java.lang.ClassNotFoundException: javax.annotation.processing.ProcessingEnvironment
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 2 more

Eu acho que há algum problema com rt.jar ? Qual é a melhor maneira de proceder aqui? Devo tentar desinstalar / reinstalar o Java 8? Se sim, qual é a maneira mais fácil de fazer isso? Ou há algum componente Java que está faltando? Eu quero desenvolver programas Java no Eclipse, e eu entendo que oracle-java8-installer me daria tudo o que eu preciso.

Alguém pode me dizer o que está incluído no "Oracle Java 8"? Eu sei que há muitas coisas Java que eu poderia instalar, por exemplo o JDK, JVM ... para que cada uma dessas coisas é usada, e estou obtendo tudo isso quando instalo o Java 8?

    
por Adam 09.01.2017 / 08:18

1 resposta

2

rt.jar está corrompido.

Remova o instalador Java possivelmente corrompido:

sudo rm /var/cache/oracle-jdk8-installer/*.tar.gz

Em seguida, reinstale:

sudo apt-get install --reinstall oracle-java8-installer
    
por user589808 09.01.2017 / 15:59