Não é possível alterar o JAVA_HOME

1

Quando executo o java -version no meu terminal, obtenho:

user@ubuntu:~$ java -version
java version "1.7.0_25"
OpenJDK Runtime Environment (IcedTea 2.3.10) (7u25-2.3.10-1ubuntu0.13.04.2)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

Eu preciso mudar meu java para 5. Eu fiz o download do jdk5 que está localizado aqui:

/home/user/tools/jdk1.5.0_22

Primeiro, tentei adicionar o seguinte ao meu arquivo ~ / .bashrc:

JAVA_HOME=/home/user/tools/jdk1.5.0_22
export JAVA_HOME
PATH=$PATH:$JAVA_HOME/bin
export PATH 

Eu reiniciei meu terminal, mas ainda recebo:

user@ubuntu:~$ java -version
java version "1.7.0_25"
OpenJDK Runtime Environment (IcedTea 2.3.10) (7u25-2.3.10-1ubuntu0.13.04.2)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

Eu tentei adicionar JAVA_HOME a /etc/environment :

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

JAVA_HOME=/home/user/tools/jdk1.5.0_22

Depois de reiniciar o terminal (feche e abra um novo) o java ainda aponta para o jdk 7:

user@ubuntu:~$ java -version
java version "1.7.0_25"
OpenJDK Runtime Environment (IcedTea 2.3.10) (7u25-2.3.10-1ubuntu0.13.04.2)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

Mas parece que o JAVA_HOME está definido:

user@ubuntu:~$ echo $JAVA_HOME
/home/user/tools/jdk1.5.0_22

Como altero a versão do java que eu uso?

    
por u123 17.10.2013 / 20:50

2 respostas

3

O primeiro executável java encontrado em seu PATH é /usr/bin/java , que provavelmente é um link para /etc/alternatives/java , que provavelmente é um link para /usr/lib/jvm/java-7-oracle/jre/bin/java .

Você pode tentar configurar o seu PATH para ter seu novo local do java no começo. Você fez o oposto, adicionando no final. Você deveria ter tentado o seguinte:

export PATH=/home/user/tools/jdk1.5.0_22/bin:$PATH

Em combinação com JAVA_HOME você deve estar OK, mas outra maneira mais debian-ish (ou ubuntu-ish) é usar o utilitário update-alternatives .

sudo update-alternatives --install /usr/bin/java java /home/user/tools/jdk1.5.0_22/bin/java 100
sudo update-alternatives --set java /home/user/tools/jdk1.5.0_22/bin/java

Mas você precisa fazer isso com todos os arquivos executáveis que você pretende usar a partir dessa instalação.

Para mais detalhes, veja link

    
por 17.10.2013 / 21:21
0

Você pode querer verificar o comando whereis , bem como as alternativas. Verifique se existe um symlink em /etc/alternatives/java que aponte para IcedTea em vez do seu executável java desejado. Você pode querer verificar o comando alternatives para instalar uma nova alternativa e configurá-la como desejar.

Editar: Link para a documentação do RHEL como um exemplo: link

    
por 17.10.2013 / 21:03

Tags