
先週、次のコマンドで Oracle Java 8 をインストールしました。
sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
すべては順調のようでした(私はシステムを通常通り使い続けましたが、1週間で何をしたか正確にはわかりません)。今、実行するとjava -version
、
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)
しかし、今実行するjavac -version
と
/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
に何か問題があると思いますかrt.jar
? ここで進める最善の方法は何ですか? Java 8 をアンインストールして再インストールしてみる必要がありますか? もしそうなら、それを実行する最も簡単な方法は何ですか? または、不足している Java コンポーネントがありますか? Eclipse で Java プログラムを開発したいのですが、oracle-java8-installer
必要なものはすべて得られると理解していました。
「Oracle Java 8」には何が含まれているのか教えていただけますか? JDK、JVM など、インストールできる Java のものがたくさんあることは知っていますが、これらはそれぞれ何に使用されますか? また、Java 8 をインストールすると、これらすべてが取得されますか?
答え1
rt.jar
破損しています。
破損している可能性のある Java インストーラを削除します。
sudo rm /var/cache/oracle-jdk8-installer/*.tar.gz
次に再インストールします:
sudo apt-get install --reinstall oracle-java8-installer