Skip to content

Instantly share code, notes, and snippets.

@shafinmahmud
Last active January 9, 2026 00:24
Show Gist options
  • Select an option

  • Save shafinmahmud/876d256821ec206564a7bfa524ff3d2f to your computer and use it in GitHub Desktop.

Select an option

Save shafinmahmud/876d256821ec206564a7bfa524ff3d2f to your computer and use it in GitHub Desktop.
Completely Remove JAVA from Linux
Clean previous JVMs
-------------------
1. Remove all the Java related packages (Sun, Oracle, OpenJDK, IcedTea plugins, 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. Purge config files:
dpkg -l | grep ^rc | awk '{print($2)}' | xargs sudo apt-get -y purge
3. Remove Java config and cache directory:
sudo bash -c 'ls -d /home/*/.java' | xargs sudo rm -rf
4. Remove manually installed JVMs:
sudo rm -rf /usr/lib/jvm/*
5. Remove Java entries, if there is still any, from the alternatives:
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. Search for possible remaining Java directories:
sudo updatedb
sudo locate -b '\pack200'
If the command above produces any output like '/path/to/jre1.6.0_34/bin/pack200' remove the directory that is parent of bin, like this:
sudo rm -rf /path/to/jre1.6.0_34.
@StormChaserWCE
Copy link

still won't work

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment