Vivendo e Aprendendo

Experiência prática na administração de Banco de Dados

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.

comments powered by Disqus