Jak całkowicie odinstalować Javę?


Odpowiedzi:


311
  1. Usuń wszystkie pakiety związane z Javą (Sun, Oracle, OpenJDK, wtyczki IcedTea, GIJ):

    dpkg-query -W -f='${binary:Package}\n' | grep -E -e '^(ia32-)?(sun|oracle)-java' -e '^openjdk-' -e '^icedtea' -e '^(default|gcj)-j(re|dk)' -e '^gcj-(.*)-j(re|dk)' -e '^java-common' | xargs sudo apt-get -y remove
    sudo apt-get -y autoremove
    
  2. Wyczyść pliki konfiguracyjne (ostrożnie. To polecenie usunęło również pliki konfiguracyjne libsgutils2-2 i virtualbox):

    dpkg -l | grep ^rc | awk '{print($2)}' | xargs sudo apt-get -y purge
  3. Usuń katalog konfiguracji i pamięci podręcznej Java:

    sudo bash -c 'ls -d /home/*/.java' | xargs sudo rm -rf
  4. Usuń ręcznie zainstalowane maszyny JVM:

    sudo rm -rf /usr/lib/jvm/*
  5. Usuń wpisy Java, jeśli nadal istnieją, z alternatyw :

    for g in ControlPanel java java_vm javaws jcontrol jexec keytool mozilla-javaplugin.so orbd pack200 policytool rmid rmiregistry servertool tnameserv unpack200 appletviewer apt extcheck HtmlConverter idlj jar jarsigner javac javadoc javah javap jconsole jdb jhat jinfo jmap jps jrunscript jsadebugd jstack jstat jstatd native2ascii rmic schemagen serialver wsgen wsimport xjc xulrunner-1.9-javaplugin.so; do sudo update-alternatives --remove-all $g; done
  6. Wyszukaj możliwe pozostałe katalogi Java:

    sudo updatedb
    sudo locate -b '\pack200'
    

    Jeśli powyższe polecenie tworzy żadnego wyjścia jak /path/to/jre1.6.0_34/bin/pack200usunąć katalog, który jest rodzicem kosza , tak: sudo rm -rf /path/to/jre1.6.0_34.


6
Czy przetestowałeś już tę odpowiedź? Jestem dość pewien, że masz wszystko, ale po prostu podwójnie sprawdź. :)
Jorge Castro,

10
@JorgeCastro, absolutnie. Zbudowałem te polecenia jeden po drugim, następnie potokowałem je wszystkie razem i uruchomiłem je wszystkie w różnych scenariuszach instalacji Java, które mam do celów testowych na niektórych stacjach roboczych w pracy. Naprawdę zwróciłem uwagę na dane wyjściowe, grepktóre są przesyłane strumieniowo apt-get remove, myślę, że obejmują one prawie wszystkie możliwości dotyczące instalacji za pomocą pakietów deb.
Eric Carvalho,

2
Chociaż przedstawiona sekwencja poleceń działa w większości przypadków, myślę, że moja odpowiedź wymaga pewnych ulepszeń. Wszystkim, proszę, proponuj zmiany, które mogą to poprawić, na przykład lepsze objaśnienie każdego polecenia lub wskazanie scenariusza, którego nie obejmuje.
Eric Carvalho,

3
+1 za odpowiedź. Niedawno znalazłem scenariusz, w którym usunięcie openjdk powoduje instalację innych pakietów Java. Obejściem tego problemu jest wyłączenie całego repozytorium, a następnie wykonanie polecenia usuwania.
Anwar,

1
@EricCarvalho Kiedy wydałem polecenie, sudo bash -c 'ls -d /home/*/.java' | xargs sudo rm -rfodpowiedź z terminala została podana jako niepoprawna.
n00b

38

Aby całkowicie usunąć OpenJDK z Ubuntu 11.10 (może to być wystarczające w innych wersjach Ubuntu), uruchom:

sudo apt-get purge openjdk-\* icedtea-\* icedtea6-\*

Jeśli chcesz uzyskać instrukcje dotyczące usuwania zastrzeżonej wersji Java (Oracle) firmy Sun („Sun”), musisz określić sposób jej zainstalowania. (Jeśli edytujesz pytanie, aby to wskazać i pozostawiłeś komentarz do tej odpowiedzi, postaram się również dodać informacje o tym, jak to usunąć).


Wypróbowałem powyższe i zakończyłem bezbłędnie na Ubuntu 11, ale po tym nadal mogę uruchomić wersję java i odzyskać wersję openjdk „11.0.3” 16.04.2019
John Little

17

Aby rozwiązać problem, może nie być konieczne całkowite usunięcie pakietu OpenJDK. Zainstaluj pakiety sun-java6. Następnie użyj, update-java-alternativesaby przełączyć się na pakiety Sun Java.

Jeśli chcesz całkowicie usunąć OpenJDK, usuń pakiety default-jdk i / lub default-jre. Może być konieczne usunięcie niektórych pakietów Java, ale większość z nich powinna być zadowolona po zainstalowaniu pakietów Sun JDK.

Po zakończeniu usuwania pakietów możesz skorzystać z jednej z tych wskazówek dotyczących czyszczenia .


Zrobiłem już update-java-alternatives. Powinienem o tym wspomnieć. Zrobiłem też update-alternatives --config java. Teraz Chrome i Firefox informują mnie, że moja wtyczka Java jest zablokowana, ponieważ jest stara ...
CaldwellYSR

Uruchom update-java-alternatives z opcją --plugin i przywróć pierwotną wartość. Za pomocą tego narzędzia możesz mieszać i dopasowywać wartości domyślne. Przeglądarki zainstalowane z wersją 11.10 mogą oczekiwać sun-java7.
BillThor

13

Aby odinstalować Oracle Java 7, po prostu naciśnij Ctrl+ Alt+ Tna klawiaturze, aby otworzyć Terminal. Kiedy się otworzy, uruchom poniższe polecenie.

sudo update-alternatives --display java

Aby sprawdzić konfigurację przed odinstalowaniem Java.

Następnie usuń dowiązania symboliczne

(zamień słowo (wersja) na wersję Java. DO, java -versionaby uzyskać swoją wersję. Jeśli więc masz wersję 1.7.0_03, powinieneś type sudo update-alternatives --remove "java" "/usr/lib/jvm/jdk1.7.0_03/bin/java")

sudo update-alternatives --remove "java" "/usr/lib/jvm/jdk<version>/bin/java"
sudo update-alternatives --remove "javac" "/usr/lib/jvm/jdk<version>/bin/javac"
sudo update-alternatives --remove "javaws" "/usr/lib/jvm/jdk<version>/bin/javaws"

sprawdź, czy dowiązania symboliczne zostały usunięte

java -version
javac -version
which javaws

Następne 2 polecenia muszą być idealnie napisane, aby uniknąć trwałego zniszczenia systemu .

cd /usr/lib/jvm
sudo rm -rf jdk<version>

Więc zrób

sudo update-alternatives --config java
sudo update-alternatives --config javac
sudo update-alternatives --config javaws

Więc zrób

sudo vi  /etc/environment

Usuń linię za pomocą JAVA_HOME 1



Aby odinstalować OpenJDK (jeśli jest zainstalowany). Najpierw sprawdź, które pakiety OpenJDK są zainstalowane.

sudo dpkg --list | grep -i jdk

Aby usunąć openjdk:

sudo apt-get purge openjdk*

Odinstaluj pakiety związane z OpenJDK.

sudo apt-get purge icedtea-* openjdk-*

Sprawdź, czy wszystkie pakiety OpenJDK zostały usunięte.

sudo dpkg --list | grep -i jdk

1 Źródło: akbarahmed.com


Czy nie możesz również usunąć /usr/lib/jvmfolderu? O ile mi wiadomo, używa go tylko Java.
njallam

Przypuszczam, że mógłbyś, możesz dodać to tam, lub mogę z twoim OK.
Mitch

3

Wypróbuj to polecenie:

java -version

Jeśli przyjdzie 1.6 *, spróbuj:

sudo apt-get autoremove openjdk-6-jre

Jeśli pojawi się 1.7 *, spróbuj:

sudo apt-get autoremove openjdk-7-jre

Zakładając, że nie masz jdk w swoim systemie. Jeśli używasz tego polecenia:

sudo apt-get autoremove openjdk-`<version>`-jdk

zamień na wersję taką, jak w poprzednim przykładzie.


2

łatwiej jest używać synaptic.

zakładka „sekcje” przewiń w dół do java. wystarczy wybrać każdy element, który widzisz, z zielonym polem i zaznaczyć do całkowitego usunięcia. powtórz dla wszystkich sekcji Java i wszystkich plików.


1

Zgodził się z Eliaszem. Polecenie „apt-get purge” może całkowicie usunąć te pakiety.

Zakładając, że wcześniej zainstalowałeś kopię pakietu java-6-sun, kontynuacja pomoże pozbyć się zepsutego dowiązania symbolicznego:

sudo update-alternatives --config java

A następnie wybierz prawidłową ścieżkę, którą chcesz połączyć jako domyślną ścieżkę wywoływania Java.

Następnie sprawdź wersję Java za pomocą tego polecenia:

java -version

0

Po prostu usuń wszystkie pliki JDK lub JRE, na przykład zazwyczaj jest on instalowany w tej lokalizacji:

/usr/lib/jvm/java-7-oracle

Więc usuń wszystkie pliki znajdujące się w folderze „java-7-oracle” z uprawnieniami administratora i rozpakuj w nim najnowsze pliki JDK lub JRE. To wszystko, teraz masz zainstalowaną najnowszą wersję Java.

PS Nazwa twojego katalogu może różnić się od java-7-oracle .

Odniesienie: Oficjalna instrukcja instalacji firmy Oracle

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.