Я получаю следующую ошибку при попытке скомпилировать или выполнить все, что имеет отношение java
или javac
:
Error occurred during initialization of VM
java/lang/ClassNotFoundException: error in opening JAR file <Zip file open error> /usr/lib/jvm/java-8-oracle/jre/lib/rt.jar
Я считал здесь, что должен удалить и установить снова JDK, здесь он записан это, я должен знать, какую версию Java я установил на своем ПК для удаления - он.
Проверять версию установило, я работаю java -version
но я упомянул выше ошибку, как я могу проверить свою версию Java без той команды?
Я знаю, что установил java 8, но я не знаю точно, какая версия это.
Можно использовать эту команду для проверки версии Java:
update-alternatives --config java
Показать, какая версия Java установлена без выполнения java -version
, откройте терминал и тип:
apt policy openjdk-* oracle-java*
Небольшая часть результатов apt policy openjdk-*
похож на это:
openjdk-7-jre-lib:
Installed: (none)
Candidate: (none)
Version table:
openjdk-8-jdk:
Installed: 8u162-b12-0ubuntu0.16.04.2
Candidate: 8u162-b12-0ubuntu0.16.04.2
Поиск разделяет, которые содержат также openjdk-*-jre
, openjdk-*-jdk
или oracle-java*
где подстановочный знак *
символ может быть номером версии Java как 6, 7, 8 или 9.
Можно обнаружить полный путь значения по умолчанию java
исполняемый файл с:
readlink -f "$(which java)"
Все (нормальные) пакеты Java или пакеты, что я знаю пути установки использования, которые включают имя поставщика и номер основной версии, который ответил бы на Ваш вопрос. Например, в моей системе
$ readlink -f "$(which java)"
/usr/lib/jvm/java-9-openjdk-amd64/bin/java
говорит мне, что установка Java по умолчанию является OpenJDK 9.
Вы могли также попробовать:
dpkg -l | egrep -i 'jre|java|jdk'