Variaveis Ambiente JAVA Suse 9.3

3 respostas
ramilani12

Ola pessoal , to apanhando aqui configurar as variaveis ambiente do JAVA no Suse 9.3 , ele te traz o Java 1.4.2.06 , mas quero usar o JAVA recente 1.5.0.06
que fiz :
dentro do arquivo /etc/profile adicionei esses comandos ele varre o diretorio /etc/profile.d buscando os arquivos .sh e executa

for i in /etc/profile.d/*.sh ; do
 if [ -x $i ]; then
 . $i
 fi
 done

Dentro do diretorio criei o java.sh e dei o chmod +x, para qndo logar o suse carregue as variaveis ambiente
dentro do arquivo java.sh
usr/local/java é um link para usr/local/jdk1.5.0_06

JAVA_HOME="/usr/local/java"
 JRE_HOME="/usr/local/java/jre"
 CLASSPATH="$JAVA_HOME:$JAVA_HOME/lib:$JRE_HOME/lib:."
 MANPATH="$MANPATH:$JAVA_HOME/man"
 JAVA_DOC="$JAVA_HOME/docs"
 PATH="$PATH:$JAVA_HOME/bin:$JRE_HOME/bin"
 export JAVA_HOME JRE_HOME CLASSPATH MANPATH JAVA_DOC PATH

depois disso tentou dar um javac , ele nao reconhece o comando dando um java -version ele busca o jvm que foi instalado junto com suse , nao sei o que ele ta fazendo buscando o jvm que foi instalado com suse , preciso configurar mais coisas ?, ja procurei no google , aqui no guj o procedimento é esse , ja nao sei o que fazer :x

3 Respostas

ciczan

Cara, eu no meu Mandriva fui na força bruta mesmo.

Além de fazer isso que vc fez, apaguei o link simbolico java que tinha no /usr/bin/ e criei outro que apontava para a versão que instalei no /usr/local tipo

ln -s /usr/local/jdk/bin/java /usr/bin/java

o mesmo com o javac e fim de conversa. :stuck_out_tongue:

ramilani12

Cara não entendi muito bem …fazer um link do java e do javac ? , mas qual ele pega 5.0 ou 1.4 ? , verificando no meu /etc/profile.d , tinha dois arquivos alljava.sh e alljava.csh , esses dois caras estão setando para o java que veio junto do suse retirei eles da pasta mesmo assim ele busca o java 1.4 to perdidão !

ciczan

Não sou expert em Unix, mas vou dizer o que acho que sei:

Experimente digitar: which java
Provavelmente a resposta vai ser: /usr/bin/java
Depois veja o que é na verdade esse arquivo, com certeza é um link, no meu caso:
/usr/bin/java -> /usr/local/jdk1.5.0_04/bin/java

O que vc tem que fazer é substituir esse link.

Quando vc digita um comando, o shell vai procurar em vários lugares (nos lugares indicados pela variável de ambiente PATH), o primeiro (ou um dos primeiros) é um /usr/bin, é lá que fica a maioria dos comandos. Faça um teste:

$ echo $PATH /usr/bin:/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin/:/usr/games:/home/cicero/bin

Então mesmo que vc inclua o diretorio que tem o executável Java no final dessa variável PATH, como vc fez em:

PATH="$PATH:$JAVA_HOME/bin:$JRE_HOME/bin"

Ele vai procurar primeiro em /usr/bin antes, onde no seu caso deve ter um link para o 1.4

Desculpe se minha didática não é tão boa, são vários conceitos, espero ter sido claro.

Criado 8 de abril de 2006
Ultima resposta 8 de abr. de 2006
Respostas 3
Participantes 2