这些步骤都在非root账号下进行的。
第一步:下载jdk-8u20-linux-x64.tar.gz
下载地址:http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs.html
第二步:解压缩
sudo mkdir–p /usr/java
cd /usr/java
sudo tar -zxvf jdk-8u20-linux-x64.tar.gz
第三步:修改环境变量
修改用户家目录的~/.bashrc文件,在文件末尾处添加:
export JAVA_HOME=/usr/java/jre1.8.0_20
exportCLASSPATH=.:$JAVA_HOME/lib
export PATH=$PATH:JAVA_HOME/bin
第四步:注销用户再登陆
第五步:检查
java -version
出现下面这样的信息就算安装完成了。
java version "1.8.0_20"
Java(TM) SE Runtime Environment (build 1.8.0_20-b26)
Java HotSpot(TM) Client VM (build 25.20-b23, mixed mode)
===========
如果第三步修改的文件是/etc/profile文件,那么用户启动.bashrc文件中的环境变量则会覆盖/ect/profile中相同的环境变量。因此如果最好不要修改/ect/profile中的内容,而是直接修改用户家目录下的.bashrc文件。
比如,如果在/etc/profile的最后添加了下面三行:
export JAVA_HOME=/usr/java/jre1.8.0_20
exportCLASSPATH=.:$JAVA_HOME/lib
export PATH=$PATH:JAVA_HOME/bin
那么当用户登陆后,用户的家目录下的.bashrc文件里的环境变量中PATH将会覆盖掉/ect/profile中的PATH,这样将会导致找不到JAVA,只有重新source /etc/profile才行。但是当下次用户再次登陆后,还是找不到java。
这个的根本原因是:
系统启动后加载环境变量的顺序导致。系统启动后先加载/etc/profile,再加载用户的.bashrc,而.bashrc中的设置将会覆盖掉/etc/profile的设置。