Alterne entre versões Java facilmente [update-alternatives] parte 2
by Gilberto C. Andrade on 26 março 2012
Tagged as: Banco-do-Brasil, Chromium, Java, openSUSE, update-alternatives,
A um tempo atrás escrevi sobre o utilitário de sistema update-alternatives e mostrei como alternar entre versões do Java usando o mesmo. Naquele mesmo post mostrei que o Java já havia sido instalado e configurado pelo sistema de gerenciamento de pacotes pre-definido - Yast. Como já é de conhecimento de alguns a Oracle mudou a forma de licenciamento do Java e com isso a maioria das distribuições - senão todas - optaram por retirar o Java distribuído pela Oracle de seus repositórios. Com isso, se você precisar instalar a versão Java da Oracle terá que fazê-la manualmente.
Antes de começar, quero notificar aos usuários do navegador Chromium que como eles tive dificuldades, no início, para fazê-lo funcionar com Java ao acessar o site do Banco do Brasil. Para confirmar este problema é só fazer uma pesquisa no Google usando a seguinte sentença: chromium banco do brasil. Então para a felicidade geral nação “chromiumana”, relato que esta maneira manual aqui demonstrada soluciona este pequeno problema.
Então vamos lá! Os passos são esses:
-
Baixe a versão RPM do site da Oracle - baixei a versão jre-7u3-linux-i586.rpm;
-
Instale o jre com yast2, zypper, ou com um duplo clique no rpm pelo dolphin ou nautilus:
SUGEP265338:~ # zypper in jre-7u3-linux-i586.rpm
|
-
Agora precisamos adicionar esta instalação às alternativas já instaladas, de forma a disponibilizá-la como uma opção:
SUGEP265338:~ # update-alternatives --install /usr/bin/java java /usr/java/jre1.7.0_03/bin/java 40
|
-
Faremos o mesmo para o plugin java. Esta opção é muito importante pois estabelece qual versão Java para navegação web estaremos usando:
SUGEP265338:~ # update-alternatives --install /usr/lib/browser-plugins/javaplugin.so javaplugin /usr/java/jre1.7.0_03/lib/i386/libnpjp2.so 40
|
-
Bom, agora vem a parte mais fácil que é, como escrevi no primeiro post, alternar entre tais versões:
SUGEP265338:~ # update-alternatives --config java There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ * /usr/lib/jvm/jre-1.6.0-openjdk/bin/java 17105 auto mode 1 /usr/java/jre1.7.0_03/bin/java 40 manual mode 2 /usr/lib/jvm/jre-1.6.0-openjdk/bin/java 17105 manual mode Press enter to keep the current choice[*], or type selection number: 1 update-alternatives: using /usr/java/jre1.7.0_03/bin/java to provide /usr/bin/java (java) in manual mode. SUGEP265338:~ # |
-
E finalmente, o mais importante, o plugin para os navegadores web:
SUGEP265338:~ # update-alternatives --config javaplugin There are 2 choices for the alternative javaplugin (providing /usr/lib/browser-plugins/javaplugin.so). Selection Path Priority Status ------------------------------------------------------------ * /usr/lib/IcedTeaPlugin.so 17106 auto mode 1 /usr/java/jre1.7.0_03/lib/i386/libnpjp2.so 40 manual mode 2 /usr/lib/IcedTeaPlugin.so 17106 manual mode Press enter to keep the current choice[*], or type selection number: 1 update-alternatives: using /usr/java/jre1.7.0_03/lib/i386/libnpjp2.so to provide /usr/lib/browser-plugins/javaplugin.so (javaplugin) in manual mode. SUGEP265338:~ # |
Pronto! Feche o navegador e faça um teste. Até a próxima!
Atualização(12/07/2012): Hoje pela manhã, procurando por mudanças que torne o script update-alternatives compatível com o jdk 1.7, me deparei com uma forma bem mais simples de instalar manualmente o jdk Oracle. Veja:
zypper install jdk-7-linux-x64.rpm cd /usr/java/jdk1.7.0/bin for bin in *; do update-alternatives --install /usr/bin/$bin $bin $(pwd)/$bin 20000; done |
Agora o javaplugin para o navegador:
update-alternatives --install /usr/lib64/browser-plugins/javaplugin.so javaplugin /usr/java/jdk1.7.0/jre/lib/amd64/libnpjp2.so 20000 |
Usei a versão 64bits mas o procedimento vale também para 32bits.