java -версия отличается в пользовательском и корневом терминале

Я попытался установить Oracle SQL Developer. Но в моей Ubuntu установлена ​​IBM ACE 11 Developer Edition, из-за чего я не могу использовать путь IBM/java для запуска Oracle SQL Developer. Поэтому я загрузил и установил JAVA SE 8 и установил новый Java JDK с помощью sudo update-alternatives -set java.

Текущий на моем пользовательском терминале, даже я установил новый Java JDK:

      java version "1.8.0_271"
Java(TM) SE Runtime Environment (build 8.0.6.20 - pxa6480sr6fp20ifix-20210224_01(SR6 FP20+IJ30974))
IBM J9 VM (build 2.9, JRE 1.8.0 Linux amd64-64-Bit Compressed References 20210223_466229 (JIT enabled, AOT enabled)
OpenJ9   - 5b31a42
OMR      - 4eb8f5f
IBM      - b7e48f4)
JCL - 20201119_01 based on Oracle jdk8u271-b0

$ which java
  /opt/IBM/ace-11.0.0.12/common/jdk/jre/bin/java

Я хочу спросить, какая может быть настройка, из-за которой версия java моего пользовательского терминала по-прежнему остается java, установленной при установке ACE 11? Это какой-то параметр IBM ACE 11, который отличает java -версию от корневого терминала, даже если я запустил update-alternatives -set java? И почему мой sqldeveloper не может запуститься под моей учетной записью пользователя?

Как и в моем корневом терминале, при вводе java -version:

      java version "1.8.0_291"
Java(TM) SE Runtime Environment (build 1.8.0_291-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.291-b10, mixed mode)

# which java
 /usr/lib/jvm/jdk1.8.0_291/bin/java


In the /etc/alternatives:
lrwxrwxrwx   1 root root    34  June  4 15:52 java -> /usr/lib/jvm/jdk1.8.0_29/bin/java*

Я установил JAVA_HOME как в моем пользовательском, так и в корневом .bashrc и .profile в /usr/lib/jvm/jdk1.8.0_29/bin/java

2 ответа

Я предполагаю, что это вызвано неправильным $PATHнастройка, поэтому java сначала ищется в /opt/IBM/ace-11.0.0.12/common/jdk/jre/bin/вместо стандартного /usr/bin/java.

Вы можете проверить эхо вашего пути

      echo $PATH

и сравните вывод с корневых/некорневых терминалов. Затем вам нужно будет проверить, где добавлена ​​​​дополнительная запись (обычные подозреваемые /etc/profile, ~/.bash_profile, ~/.bashrc, ~/.bash_loginа также ~/.profile)

пользовательский терминал, даже я установил для использования новый Java JDK:

      java version "1.8.0_271"
Java(TM) SE Runtime Environment (build 8.0.6.20 - pxa6480sr6fp20ifix-20210224_01(SR6 FP20+IJ30974))
IBM J9 VM (build 2.9, JRE 1.8.0 Linux amd64-64-Bit Compressed References 20210223_466229 (JIT enabled, AOT enabled)
OpenJ9   - 5b31a42
OMR      - 4eb8f5f
IBM      - b7e48f4)
JCL - 20201119_01 based on Oracle jdk8u271-b0

$ which java
  /opt/IBM/ace-11.0.0.12/common/jdk/jre/bin/java
Другие вопросы по тегам