Surpreendentemente (como o OpenJDK 7 foi lançado para disponibilidade geral há cerca de 4 meses), o Ubuntu 11.10 ainda usa o OpenJDK 6 em vez do 7 por padrão. Qual a melhor forma de corrigir isso? Eu preferiria remover completamente o OpenJDK 6 e deixar o OpenJDK 7 ser o jdk padrão e o jre padrão.
Não quero os tarballs oficiais da Oracle, quero repositórios deb - o modo padrão do Ubuntu.
Responder1
O problema é que o default-jre
pacote depende do OpenJDK 6 e a maioria dos outros pacotes tem suas dependências definidas como default-jre | openjdk-6-jre | sun-java6-jre
- então até que o OpenJDK 7 se torne oficialmente suportado e seja usado como versão padrão, ou até que todos os pacotes dependentes de Java atualizem suas dependências, você tenho que manter o OpenJDK 6 e definir o OpenJDK 7 como padrão usando update-java-alternatives
. Exemplo para sistema de 64 bits:
$ update-java-alternatives -l
java-1.6.0-openjdk 1061 /usr/lib/jvm/java-1.6.0-openjdk
java-1.7.0-openjdk-amd64 1051 /usr/lib/jvm/java-1.7.0-openjdk-amd64
$ sudo update-java-alternatives -s java-1.7.0-openjdk-amd64
No sistema de 32 bits, o nome do diretório será diferente, você pode encontrar o nome correto usando o -l
switch. O segundo comando pode gerar muitos erros; use --jre
switch ou simplesmente ignore os erros – o script muda o que pode e simplesmente ignora o resto.
Teoricamente, seria possível editar o default-jre
pacote para depender do OpenJDK 7, mas esteja avisado que isso pode causar mais danos do que benefícios.
Responder2
Para isso, você deve ter as duas versões do jdk instaladas em seu sistema. você pode usar o apt-get para baixar ambos.
Depois disso tente,
$ sudo update-alternatives --config java
e selecione o jdk que deseja usar.
Openjdk às vezes é desfavorável para algumas aplicações.
Você também deve tentar oracle-java ou sun-java.
O link abaixo é muito útil para esse fim:
http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html
Responder3
OpenJDK 7 está nos repositórios normais do Ubuntu em 11.10, se você procurar por openjdk-7-jre e openjdk-7-jdk e instalá-los usando apt-get/synaptic/software center, eles devem substituir o openjdk-6, se isso não acontecer você pode remover os pacotes openjdk-6-* primeiro usandoapt-get purge openjdk-6-*
Responder4
O repositório pode ser encontrado aqui: https://launchpad.net/~openjdk/+archive/ppa
ou:
sudo apt-add-repository ppa:openjdk/ppa
sudo apt-get update
sudo apt-get upgrade
supondo que você tenha o OpenJDK instalado