Por favor, use a solução do @jordanm. Minha abordagem funciona, mas a dele é mais fácil e requer menos intervenção manual.
A versão mais recente do JDK da Sun pode ser encontrada em seu site aqui:
Eles não oferecem .deb
packages (somente .rpm
), portanto, você precisará fazer o download do pacote .tar.gz
para sua arquitetura. No meu caso, isso foi jdk-7u45-linux-x64.tar.gz
. Após o download do pacote, extraia-o e mova o diretório expandido para /usr/lib
:
tar xvzf jdk-7u45-linux-x64.tar.gz
sudo mv jdk1.7.0_45/ /usr/lib/
Agora você precisa dizer ao Debian para usá-lo. Isso é feito através do comando nifty update-alternatives
. Você precisa executar isso uma vez para cada programa em /usr/lib/ jdk1.7.0_45/bin
para informar ao seu sistema para usar as versões desses programas da Sun. Você pode combinar os três em um pequeno loop de shell:
for i in /usr/lib/jdk1.7.0_45/bin/*; do
i=$(basename $i);
sudo update-alternatives --install /usr/bin/$i $i /usr/lib/jdk1.7.0_45/bin/$i 1081;
done
No meu sistema, os executáveis openjdk
instalados tinham uma prioridade de 1071
, e é por isso que usei 1081
no exemplo acima. Seu caso pode ser diferente, portanto, depois de executar os comandos acima, verifique se o executável correto foi escolhido executando
sudo update-alternatives --config java
O padrão (aquele com *
) deve ser a versão do JDK que você acabou de instalar. Você pode fazer o mesmo para javac
e javaws
. Você pode usar o mesmo comando para alternar entre os executáveis java
disponíveis.