
У меня CentOS 6.7. Я установил OpenJDK 1.8 с помощью следующей команды.
yum install java-1.8.0-openjdk-devel
После установки я выполнил следующие две команды.
export JAVA_HOME=/usr/jdk/jdk1.8.0_121
export PATH=$JAVA_HOME/bin:$PATH
Но когда я печатаю, java -version
я все равно вижу следующий вывод. Я не вижу OpenJDK.
версия Java "1.8.0_121"
Среда выполнения Java(TM) SE (сборка 1.8.0_121-b13)
Java HotSpot(TM) 64-битная серверная виртуальная машина (сборка 25.121-b13, смешанный режим)
РЕДАКТИРОВАТЬ
Я создал похожую ветку, в которой не нашел «javac» -bash: ошибка javac: команда не найдена» после установки OpenJDK 1.7 В той теме я не смог выполнить javac, что было решено, и это было связано с OpenJDK 1.7 (не 1.8). Но эта тема полностью посвящена java -version, не показывающей OpenJDK для OpenJDK 1.8.
решение1
Ниже приведены шаги по поиску Java:
find / -name java | grep "/bin/java" ---> This will give all paths where you have executable of java
[root@XXXXX ~]# find / -name java | grep "/bin/java"
/usr/bin/java
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09-1.el6_10.x86_64/bin/java
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09-1.el6_10.x86_64/jre/bin/java
Как только вы найдете нужные места, просто сделайте следующую запись для java home для машины: vi /etc/profile ---> добавьте следующие строки в конец
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.232.b09-1.el6_10.x86_64
export PATH=$JAVA_HOME/bin:$PATH
[root@XXXXX ~]# java -version
openjdk version "1.8.0_232"
OpenJDK Runtime Environment (build 1.8.0_232-b09)
OpenJDK 64-Bit Server VM (build 25.232-b09, mixed mode)
В вашем примере вы указываете путь для JDK, а не для OpenJDk, как показано ниже: export JAVA_HOME=/usr/jdk/jdk1.8.0_121 export PATH=$JAVA_HOME/bin:$PATH
Вот почему отображается Java, хотя у вас установлен OpenJDK.
Если у вас возникнут какие-либо вопросы, дайте мне знать.