Como faço para atualizar para o Java 7 mais recente sem perder minhas dependências e add-ons Java existentes?

3
$ uname -a
Linux X51 3.0.0-12-generic #20-Ubuntu SMP Fri Oct 7 14:56:25 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

$ java -version
java version "1.6.0_23"
OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
OpenJDK 64-Bit Server VM (build 20.0-b11, mixed mode)

Eu tenho versões acima, que têm uma configuração estável importante (para meu próprio aplicativo):

  • Infelizmente, eu estava trabalhando sempre com o Java 1.6, como mostrado.
  • Mas agora descobri que muitas coisas não estão funcionando por causa desse problema de versão.
  • Eu quero remover o:

a) java antigo completamente (com segurança)

b) mude para novo, instale o openjdk-7 64-bit (com segurança)

É uma ideia melhor simplesmente aplicar apt-get remove openjdk*. ?

Ou

o que mais seria uma maneira mais inteligente e mais segura? (para evitar não perder muitas outras dependências apenas para remover o openjdk-6)

Acompanhamento:

$ java -version
java version "1.7.0_09"
OpenJDK Runtime Environment (IcedTea7 2.3.3) (7u9-2.3.3-0ubuntu1~12.10.1)

$ sudo update-alternatives --config java
[sudo] password for sun: 
There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      auto mode
  1            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      manual mode
  2            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      manual mode

Press enter to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java to provide /usr/bin/java (java) in manual mode

$ java -version
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.5) (6b24-1.11.5-0ubuntu1~12.10.1)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
    
por YumYumYum 05.06.2012 / 22:34

1 resposta

3
  

o que mais seria uma maneira mais inteligente e mais segura? (para evitar não perder muitas outras dependências apenas para remover o openjdk-6)

A maneira mais inteligente é ser compatível com versões anteriores e instalar as duas (o Java 7 ainda está amadurecendo, acredito.)

Instale o OpenJDK 7, e o que mais você precisar, e então use sudo update-alternatives --config java para mostrar os vários java binários disponíveis e seus locais e selecione um padrão (invocado quando você digita java ).

Isso permite que você ainda use o Java 6, quando necessário, simplesmente chamando-o através do caminho completo para o binário. Substitua java por javac , etc. em update-alternatives e defina-os também.

Quando você determinar que todos os seus códigos / programas são executados na versão 1.7 e deseja se livrar da versão 1.6, execute dpkg --list | grep -i openjdk para descobrir quais pacotes estão instalados em seu sistema antes de executar algo como apt-get remove openjdk.* !! / p>     

por ish 06.06.2012 / 11:24