linux下查看已经安装的jdk 并卸载jdk
一、查看Jdk的安装路径:
whereis java
which java (java执行路径)
echo $JAVA_HOME
echo $PATH
备注:如果是windows中,可以使用:
set java_home:查看JDK安装路径
java -version:查看JDK版本
二、卸载旧版本的JDK:
1. 确定JDK的版本:
rpm -qa | grep jdk
rpm -qa | grep gcj
可能的结果是:
libgcj-4.1.2-42.el5
java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
2.然后卸载:
yum -y remove java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
如果这中方法不行,可以使用如下的方法卸载:
1)卸载系统自带的jdk版本:
查看自带的jdk:
#rpm -qa|grep gcj
可能看到如下类似的信息:
libgcj-4.1.2-44.el5
java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
使用rpm -e --nodeps 命令删除上面查找的内容:
#rpm -e –nodeps java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
2)卸载rpm安装的jkd版本
查看安装的jdk:
#rpm -qa|grep jdk
可能看到如下类似的信息:
jdk-1.6.0_22-fcs
卸载:
#rpm -e --nodeps jdk-1.6.0_22-fcs
3)找到jdk安装目录的_uninst子目录
·在shell终端执行命令./uninstall.sh即可卸载jdk
三、下载新版本的JDK
官方地址: http://www.oracle.com/technetwork/java/javase/downloads/index.htm
四、安装JDK(以JDK1.6为例子)
1、jdk1.6提供以下两种自解压文件:
1)jdk-6u22-linux-i586.bin
2)jdk-6u22-linux-i586-rpm.bin
2、我下载的是jdk-6u22-linux-i586-rpm.bin
3、给所有用户添加可执行的权限
#chmod +x jdk-6u22-linux-i586-rpm.bin
4、执行该文件,命令如下:
#./jdk-6u22-linux-i586-rpm.bin
执行后会解压出一些rpm软件包,其中有jdk-6u22-linux-i586.rpm这是主程式包,接下来就是安装这个主程序包。
5.、切换到root用户,进入jdk-6u22-linux-i586.rpm存放的目录,执行如下命令:
rpm -ivh jdk-6u22-linux-i586.rpm
安装软件会将JDK自动安装到 /usr/java/jdk-1.6.0_22-fcs目录下
在linux上安装时,常常会碰到如下的Fail:
RPM should not be used directly install RPM packages, use Alien instead!
这时用这个命令即可:
rpm -ivh jdk-6u22-linux-i586.rpm --nodeps --force
五、配置环境变量:
如果所有用户都想共享jdk的环境变量,可以通过如下方式设置。
(但建议最好不要这样,万一有其他用户使用其他JDK就会受到影响。)
在/etc/profile文件中加入:
# vi /etc/profile
export JAVA_HOME=/usr/java/jdk-1.6.0_22-fcs
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
注:修改文件后要想马上生效还要运行# source /etc/profile不然只能在下次重进此用户时生效。
记得CLASSPATH路径中加入$CLASSPATH:不然可能在解释执行class文件时会报错。
当然也可以用更加彻底的方法:reboot命令来重启机器。
有时你可能会发现/etc/profile中配置的环境变量在系统重新启动或者重新使用SSH连接后失效了,其原因有可能是
1. 某个非root用户下环境变量是生效的,但是切换到root用户后,使用javac等命令失效。
2.写入到/etc/profile的环境变量在重新启动后会自动生效。未重新启动之前每次打开终端都需如你所述执行source命令。
附: 怎样安装tar类型的JDK:
首先将*.tar.gz解压
tar -xzvf *.tar.gz
假设得到的文件夹为java
将其移动到/usr/中
sudo mv java /usr/local
然后设置环境变量:
sudo vim /etc/profile
打开文件
在结尾处输入:
export JAVA_HOME=/usr/local/java export JRE_HOME=/usr/local/java/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
Ubuntu 中修改默认jdk
update-alternatives --install /usr/bin/java java /usr/localjava/bin/java 300 update-alternatives --install /usr/bin/javac javac /usr/local/java/bin/javac 300
通过这一步将我们安装的jdk加入java选单。
update-alternatives --config java
选择默认的jdk
java -version
linux下查看已经安装的jdk 并卸载jdk的更多相关文章
- linux下查看已安装的软件与卸载
转自:https://blog.csdn.net/qq_22075041/article/details/78855849 因为linux安装软件的方式比较多,所以没有一个通用的办法能查到某些软件是否 ...
- (转)linux下查看已安装的软件与卸载
因为linux安装软件的方式比较多,所以没有一个通用的办法能查到某些软件是否安装了.总结起来就是这样几类: 1.rpm包安装的,可以用rpm -qa看到,如果要查找某软件包是否安装,用 rpm -qa ...
- Linux下查看Python安装了哪些脚本模块
Linux下查看Python安装了哪些脚本模块 1.什么是rpm ? rpm 即RedHat Package Management,是RedHat的发明之一 .现在包括OpenLinux.fedora ...
- windows和linux下查看java安装路径
windows下查看版本:(默认安装路径安装就不需要去配环境变量了) java -version windows下查看安装路径: java -verbose Linux下安装版本查看方式和window ...
- Linux下查看Nginx安装目录、版本号信息?
Linux环境下,怎么确定Nginx是以那个config文件启动的? 输入命令行: ps -ef | grep nginx 摁回车,将出现如下图片: master process 后面的就是 ngi ...
- Linux下查看Nginx安装目录、版本号信息及当前运行的配置文件
Linux环境下,怎么确定Nginx的安装路径 输入命令行: ps -ef | grep nginx 摁回车,将出现如下图片: master process 后面的就是的 /data/software ...
- Linux下查看nginx安装目录
输入命令行: ps -ef | grep nginx master process后边的目录即是.
- linux下cmake编译安装、配置和卸载mysql
WIN10下虚拟机:VMware workstation 12 PRO 安装 # 1.查看系统版本 [root@vm-xiluhua][/home/xiluhua]$ cat /etc/redhat- ...
- linux下rpm包安装、配置和卸载mysql
WIN10下虚拟机:VMware workstation 12 PRO 安装 # 1.查看系统版本 [root@vm-xiluhua][/home/xiluhua]$ cat /etc/redhat- ...
随机推荐
- jquery easy ui 学习 (6) basic validatebox
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 水仙花 AC 杭电
水仙花数 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- C++学习笔记2——引用
1. int ival = 1; int &refVal = ival; //引用必须初始化,且类型严格匹配 2. int ival = 1; int &refVal = ival; ...
- Hibernate的查询语言之HQL(二)——Hibernate查询的from字句
from 是最简单的HQL语句,也是最基本的HQL语句.from 关键字后紧跟持久化类的类名.例如: from Person 表明从Person持久化类中取出全部的实例. 大部分时候,推荐位该Pers ...
- Chapter 2. OpenSSL的安装和配置学习笔记
Chapter 2. OpenSSL的安装和配置学习笔记 2.1 在linux上面安装OpenSSL我还是做点No paper事情比较在行,正好和老师的课程接轨一下.以前尝试过在Windows上面安装 ...
- onCreateOptionsMenu与onCreateContextMenu差别
onCreateOptionsMenu只会在启动时调用一次,而onCreateContextMenu则每次都会调用,这是因为onCreateContextMenu需要为所有的View控件的上下文菜单服 ...
- Types of AOP
There are two distinct types of AOP: static and dynamic. The difference between them is really the p ...
- C++ STL之set常用指令
set,关联容器,元素不允许有重复,数据被组织成一棵红黑树,以牺牲插入和删除元素的效率换来了查找元素的高效率(O(logN)). 1.初始化 set<int> st; 2.begin返回第 ...
- Flask 安装 Ubuntu 14.04
学习文档: http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world 中文版学习文档 开源中国版: ...
- 使用 Make 命令构建网站
网站开发正变得越来越专业,涉及到各种各样的工具和流程,迫切需要构建自动化. 所谓”构建自动化”,就是指使用构建工具,自动实现”从源码到网页”的开发流程.这有利于提高开发效率.改善代码质量. 本文介绍如 ...