Para mim, foi:
sudo apt-get remove openjdk-6*
sudo apt-get remove icedtea*
java -version
java version "1.6.0_18"
OpenJDK Runtime Environment (IcedTea6 1.8.13) (6b18-1.8.13-0+squeeze2)
OpenJDK 64-Bit Server VM (build 14.0-b16, mixed mode)
Não parece ser uma maneira fácil de procurar pacotes no apt, então estou usando o dpkg para procurar por pacotes relacionados ao java:
# dpkg --get-selections | less | grep java
ca-certificates-java install
java-common install
javascript-common install
libaccess-bridge-java install
libaccess-bridge-java-jni install
libdb4.7-java-gcj deinstall
libhsqldb-java-gcj deinstall
sun-java6-bin deinstall
sun-java6-jre deinstall
tzdata-java install
Eu continuo a remover o java-common, mas quando ele termina o java ainda está instalado e o java -version ainda mostra a mesma coisa.
Nada muda, o pacote java-common ainda aparece na pesquisa do dpkg. O que estou perdendo?
Eu também removi o OpenJDK, que parecia configurá-lo para "deinstall":
# dpkg --get-selections | less | grep openjdk
openjdk-6-jre deinstall
openjdk-6-jre-headless install
openjdk-6-jre-lib install
O Java ainda está lá.
# java -version
java version "1.6.0_18"
OpenJDK Runtime Environment (IcedTea6 1.8.13) (6b18-1.8.13-0+squeeze2)
OpenJDK 64-Bit Server VM (build 14.0-b16, mixed mode)
Para mim, foi:
sudo apt-get remove openjdk-6*
sudo apt-get remove icedtea*
Eu me deparei com isso porque estou trabalhando em um livro de instruções para programação android que deseja usar um Java SE e JRE específico (8u121) e solicita que todos os outros pacotes Java sejam removidos antes de continuar com a instalação. Então, depois de ler as ideias acima, eu fui com:
sudo apt-get remove openjdk*
e o resultado foi:
bryan@kali:~$ java -version
bash: /usr/bin/java: No such file or directory
Portanto, o acima sugere que não há nenhum java encontrado em qualquer versão. Qual é o OP queria fazer (eu acho).
Caso alguém encontre esse segmento porque está desinstalando o Java para que possa instalar uma versão antiga, incluí um passo a passo que encontrei. Os dois primeiros códigos ajudam você a instalá-lo se não tiver interface gráfica. Se você tiver um tarball, pule esses. O último codeblock tem algumas partes que você precisará editar se não estiver instalando minha mesma versão.
{begin copy / paste}
Caso você esteja tentando instalar o Java JDK remotamente e não tenha absolutamente nenhum acesso à Interface Gráfica com o Usuário e ao navegador da Web, use o seguinte método de curl para baixar o Java JDK usando uma linha de comando.
Primeiro, obtenha um URL de download correto usando o comando curl:
$ curl -s http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html | grep "otn-pub" | cut -d \" -f12
O comando acima gera um monte de URLs para sua seleção. Para iniciar o download do arquivo Java desejado, copie sua URL e inicie o download usando o comando curl enquanto aceita a licença do Jave solicitada. Por exemplo:
$ curl -LOb "oraclelicense=a" http://download.oracle.com/otn-pub/java/jdk/8u121-b13/e9e7ea248e2c4826b92b3f075a80e441/jdk-8u121-linux-x64.tar.gz
Instalar o Java JDK Neste estágio, devemos ter um tarball Java JDK apropriado em nosso diretório de trabalho atual:
$ ls
jdk-8u121-linux-x64.tar.gz
Crie um diretório de instalação de destino do Java JDK:
# mkdir /opt/java-jdk
Extraia o tarball do Java JDK baixado anteriormente:
# tar -C /opt/java-jdk -zxf jdk-8u121-linux-x64.tar.gz
Definir o Oracle Java como padrão Atualmente, o sistema não reconhece nossa instalação do Java JDK:
$ update-alternatives --list java
update-alternatives: error: no alternatives for java
$ java
bash: java: command not found
Use o comando update-alternatives para incluir java, javac e javac como parte do ambiente Java do sistema. Substitua o caminho abaixo pelos binários java onde for apropriado para refletir sua versão do java baixada:
# update-alternatives --install /usr/bin/java java /opt/java-jdk/jdk1.8.0_121/bin/java 1
update-alternatives: using /opt/java-jdk/jdk1.8.0_121/bin/java to provide /usr/bin/java (java) in auto mode
# update-alternatives --install /usr/bin/javac javac /opt/java-jdk/jdk1.8.0_121/bin/javac 1
update-alternatives: using /opt/java-jdk/jdk1.8.0_121/bin/javac to provide /usr/bin/javac (javac) in auto mode
{end copy / paste}
Ok, então, depois que eu a segui, quis confirmar que isso funciona ...
bryan@kali:~/Desktop$ java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
É isso! É isso que queremos.
Depois fiquei preocupado que o 'apt update' pudesse apenas desfazer o que eu fiz atualizando o pacote (inseguro). Então eu os coloquei em espera. Para remover a espera: o apt-mark solta.
bryan@kali:~/Desktop$ sudo apt-mark hold openjdk-8*
openjdk-8-jre set on hold.
openjdk-8-jre-headless set on hold.
openjdk-8-doc set on hold.
openjdk-8-jdk set on hold.
openjdk-8-dbg set on hold.
openjdk-8-demo set on hold.
openjdk-8-jdk-headless set on hold.
openjdk-8-source set on hold.
openjdk-8-jre-dcevm set on hold.
openjdk-8-jre-zero set on hold.
Você já tentou:
sudo apt-get remove '*jre*'
sudo apt-get remove '*icedtea*'
Estes são apenas regex's que devem corresponder a qualquer coisa com "icedtea" ou "jre" no nome.
Espero que isso ajude!