ubuntu如何完全卸载和安装 Java及android环境?【转】
本文转载自:https://my.oschina.net/lxrm/blog/110638
最近,迷上了java,一时间什么环境变量/虚拟机都猛然袭来,有点不适。环境配置在前,这所自然。平时搞PHP都喜欢自己倒腾环境,自然时因为系统默认版本并不如意罢。java而言,也有类似情节。不过java貌似更好一些,不像php,我好多代码都是5.2的,ubuntu的apt库里提供的都所5.4,不敢乱用,似乎还不习惯新玩意。
言归正传,这篇文章也是得益于google,以及老外的孜孜不倦,拿过来记录之,原帖见此链 。
注意,以下手法请斟酌使用,我仅仅使用了第二种方法中的自动卸载方法卸载,然后重新apt安装的。(OS:ubuntu 12.10)
一、卸载旧有包
大神法一:
1、 移除所有 Java相关包 (Sun, Oracle, OpenJDK, IcedTea plugins, GIJ):
# apt-get update
# apt-cache search java | awk '{print($1)}' | 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
# apt-get -y autoremove
2、清除配置信息
# dpkg -l | grep ^rc | awk '{print($2)}' | xargs sudo apt-get -y purge
3、清除java配置及缓存
# bash -c 'ls -d /home/*/.java' | xargs sudo rm -rf
4、手动清除JVMs
# rm -rf /usr/lib/jvm/*
5、清除所有java实体,如果还有,则使用Alternatives命令(Remove Java entries, if there is still any, from thealternatives):
# 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、查找可能存在 Java的路径:
# updatedb
# locate -b '\pack200'
如果上述命令产生了任何类似于这样( /path/to/jre1.6.0_34/bin/pack200)的结果,则 删除 bin对父目录,可以这样做: sudo rm -rf /path/to/jre1.6.0_34
大神法二:
1、卸载之前,先检查Java对安装情况
# update-alternatives --display java
To check the setup before uninstalling Java.
接下来,删除符号链接
2、(替换(version)为你的java具体版本.命令 “java -version”来得到,我的所1.7.0_15,那么你可以用命令 update-alternatives --remove "java" "/usr/lib/jvm/jdk1.7.0_15/bin/java"来删除)
# update-alternatives --remove "java" "/usr/lib/jvm/jdk<version>/bin/java"
# update-alternatives --remove "javac" "/usr/lib/jvm/jdk<version>/bin/javac"
# update-alternatives --remove "javaws" "/usr/lib/jvm/jdk<version>/bin/javaws"
确认这些符号链接(symlinks)是否都删除了
# java -version
# javac -version
# which javaws
后面俩命令必须要慎之又慎,不然可能毁掉你的系统.
# cd /usr/lib/jvm
# sudo rm -rf jdk<version>
然后,
# update-alternatives --config java
# update-alternatives --config javac
# update-alternatives --config javaws
最后,
# vi /etc/environment
删除JAVA_HOME 这行环境变量。
-----------------分割线---------------------------------
要删除 OpenJDK (如果已安装的话)。首先,检查是安装的哪个 OpenJDK包。
# dpkg --list | grep -i jdk
移除 openjdk包:
# apt-get purge openjdk*
卸载 OpenJDK 相关包:
# apt-get purge icedtea-* openjdk-*
检查所有 OpenJDK包是否都已卸载完毕:
# dpkg --list | grep -i jdk
完毕。
二、安装新java环境
有了上面卸载经验,自然环境搭建经验也有了。
安装法子,有两种,一种是直接在java官网去下载最新包,我的机器是64位的,所以对应含有amd64字样。
(关于amd64的说法,可以google一下,大约就是amd最先推出64位机,于是乎后来者比如因特尔在推出64位CPU时也沿用了此叫法。)
法一:
下载zip包对方法我就不详述了,google一大把,很多的。无非就是解压,然后指定环境到解压的目录即可。
法二:
1、 apt-get方式安装,其实也简单,如此即可:
#apt-get install openjdk-7-sdk
2、配置环境变量
先找到java环境在哪里
#update-alternatives --display java
----结果如下-------
#update-alternatives --display java
java - 自动模式
链接目前指向 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java
/usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java - 优先级 1071
slave java.1.gz:/usr/lib/jvm/java-7-openjdk-amd64/jre/man/man1/java.1.gz
目前“最佳”的版本为 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java
看到了结果,即java环境是在这个路径(/usr/lib/jvm/java-7-openjdk-amd64)之下的,再查看此路径:
#ls -l /usr/lib/jvm/
总用量 8
lrwxrwxrwx 1 root root 24 4月 27 2012
default-java -> java-1.7.0-openjdk-amd64
lrwxrwxrwx 1 root root 24 4月 27 2012 java-1.6.0-openjdk -> java-1.7.0-openjdk-amd64
lrwxrwxrwx 1 root root 20 2月 21 14:22 java-1.7.0-openjdk-amd64 -> java-7-openjdk-amd64
lrwxrwxrwx 1 root root 24 4月 27 2012 java-6-openjdk -> java-1.7.0-openjdk-amd64
drwxr-xr-x 7 root root 4096 2月 27 13:27 java-7-openjdk-amd64 drwxr-xr-x 3 root root 4096 2月 26 16:16 java-7-openjdk-common
默认default-java最终是指向的 java-7-openjdk-amd64,那么就所我们要的JAVA_HOME路径了。
设置环境变量
#vi .bashrc
在末尾添加如下几行
###-----java & android path------###
export JAVA_HOME=/usr/lib/jvm/default-java
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export ANDROID_SDK_HOME=/home/nil/software/android-sdk-linux
export ANDROID_SDK_TOOLS=/home/nil/software/android-sdk-linux/tools
export PATH=$ANDROID_SDK_HOME:$ANDROID_SDK_TOOLS:$JAVA_HOME/bin:$PATH
至此,android开发环境就好了
ubuntu如何完全卸载和安装 Java及android环境?【转】的更多相关文章
- 安装java后的环境变量配置
安装java后的环境变量配置- 自定义安装目录可能会带来一些烦恼,配置环境变量可能很难找对目录,所以倒不如干脆就用默认的安装目录,记住它,安装完java之后去到那个路径把路径复制, 然后进行环境变量配 ...
- Linux学习3-yum安装java和Tomcat环境
前言 linux上安装软件,可以用yum非常方便,不需要下载解压,一个指令就能用yum安装java和tomcat环境. 前面一篇已经实现在阿里云服务器上搭建一个禅道系统的网站,算是小有成就,但并不是每 ...
- 购买了一台阿里云ECS后安装Java项目运行环境
在docker等虚拟化技术大行其道的今天,我原本也想在我买的ECS服务器里全系使用docker技术,只可惜在我尝试后发现我的ECS配置不够高,整个服务器卡到爆炸,无奈只能使用最原始的方式. 我买的服务 ...
- JAVA、JDK等入门概念,下载安装JAVA并配置环境变量
一.概念 Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言,具体介绍可查阅百度JAVA百科,这里不再赘述. Java分为三个体系,分别为: Java SE(J2SE,Java2 Platf ...
- Debian 9安装java与设置环境变量
安装默认JRE / JDK 先更新软件包索引: apt update 检查是否已安装Java: java -version 如果当前未安装Java,您将看到以下输出: Output-bash: jav ...
- 在centos 6.3系统下安装java、tomcat环境的方法与步骤(方法经过验证,可安装成功)
一.安装java1. 下载java二进制安装包 wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http ...
- Ubuntu系统如何卸载并安装新版本的jdk(permission denied问题)
1.如果是自带的openjdk运行下面可以删除: sudo apt-get purge openjdk* 但是这种情况又不一定成功,有时候运行java -version发现还是可以运行的.证明删除不成 ...
- Ubuntu下彻底卸载默认安装的mysql,自己手动下载安装MYSQL
彻底卸载: sudo apt-get autoremove --purge mysql-server-5.7 sudo apt-get remove mysql-common sudo rm -rf ...
- 卸载openjdk安装java后,netbeans启动不了
Cannot find java. Please use the --jdkhome switch. 默认的jdkhome不存在了,所以重新指定一下就可以了. 修改 /netbeans-8.0/etc ...
随机推荐
- Python--10、线程
线程 每个进程里都有一个控制线程,进程不是一个执行单位,线程是执行单位,进程是资源单位(资源隔离).进程下可以开多个线程,多线程共享进程内的资源.创建线程的速度比创建进程的速度快,因为创建线程不需要再 ...
- CSS——轮播图中的箭头
注意事项: 1.定位中left权重比right高,top权重比bottom高 2.两个span标签嵌套在一个盒子中,将来显示隐藏只需要控制父盒子就行了 <!DOCTYPE html> &l ...
- CSS——border
表格细线: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- Linux Shell ssh登录脚本
Linux 登陆服务器敲命令太多,某时候确实不便,所以就用shell写了一个 我的blog地址: http://www.cnblogs.com/caoguo 一.说明 支持秘密和密钥两种格式 用户名 ...
- C# 获得枚举值中所有数据到Array(数组)中
Array LogType = Enum.GetValues(LogTypes.登录.GetType()); public enum LogTypes { 登录, 添加, 修改, 删除, 导出, 异常 ...
- day04-交互、格式化输出及基本运算符
目录 与用户交互 python2和python3交互的区别 格式化输出 1 字符串拼接 2 占位符 3 format格式 4 f-string格式 基本运算符 算术运算符 比较运算符 赋值运算符 逻辑 ...
- Eclipse调试DEBUG时快速查看某个变量的值的快捷键
ctrl+shift+i
- 65.dynamic mapping
主要知识点: 理解dynamic mapping 定制dynamic mapping 更改default dynamic mapping 一.理解dynamic mapping 1.基本概念 ...
- Windows Phone开发(18):变形金刚第九季
变换不是一个好理解的概念,不是吓你,它涉及很多有关代数,几何,以及线性代数的知识.怎么?被我的话吓怕了?不用怕,尽管我们未必能够理解这些概念,只要我们知道怎么使用它们就是了.其实,变换就是平面上一种坐 ...
- HDU 3401 Trade
Trade Time Limit: 1000ms Memory Limit: 32768KB This problem will be judged on HDU. Original ID: 3401 ...