Skip to content

Instantly share code, notes, and snippets.

@shafinmahmud
Last active April 26, 2024 03:07
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save shafinmahmud/876d256821ec206564a7bfa524ff3d2f to your computer and use it in GitHub Desktop.
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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment