Notei este post
https://coderwall.com/p/2klgtg
e decidi que deveria colocar da maneira que gosto para mudar minhas versões java.
Originalmente, participei desse estouro de pilha em algum lugar, mas ajustei um pouco para funcionar melhor.
Basicamente, eu apenas adiciono os seguintes trechos ao meu arquivo Mac OSX ~ / .profile.
#!/bin/bash
alias java_ls='/usr/libexec/java_home -V 2>&1 | grep -E "d.d.d_dd" | cut -d , -f 1 | colrm 1 4 | grep -v Home'
function java_use() {
export JAVA_HOME=$(/usr/libexec/java_home -v $1)
export PATH=$JAVA_HOME/bin:$PATH
java -version
}
e recarreguei meu perfil executando source ~/.profile
no terminal
Então, como faço para usá-lo?
Bem, basta executar java_ls
no terminal e você obterá uma lista completa dos java_home’s instalados disponíveis em sua máquina, assim …
tom@Toms-iMac:~/dev$ java_ls
1.7.0_25
1.7.0_21
1.7.0_13
1.6.0_43-b01-447
1.6.0_43-b01-447
Mas como faço para alterar minha versão atual do java?
Bem, simplesmente execute
java_use java_version
Por exemplo, se você quiser mudar para usar o java jdk 1.6, você simplesmente escreveria
java_use 1.6
ou se você quiser mudar para java jdk 1.7.0_21 você simplesmente escreveria
java_use 1.7.0_21
.
Você também poderia ter usado apenas se não se importasse de escolher a revisão de patch mais recente do java 1.7 que você instalou. java_use 1.7
Executar este comando também produzirá o no final para que você saiba com qual jdk está trabalhando, assim …java -version
tom@Toms-iMac:~/dev$ java_use 1.7
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
Então, como isso funciona?
Existe um java_home
executável que permite listar os diretórios iniciais java disponíveis / instalados e mostrar / definir o atual java_home
. O alias faz uma boa massagem em sua saída para torná-la melhor nos resultados. Ele também pode ter um parâmetro para permitir que você defina isso como sua casa java. Basicamente, é incrível e funciona.
Por que isso é melhor do que outras soluções?
Você não precisa ficar atualizando este script toda vez que instalar uma nova versão / patch / revisão do jdk.
Tom
Respostas relacionadas:
Como verificar se o JDK é de 32 bits ou 64 bits?