ubuntu下安装jdk详解
前段时间给笔记本win7+ubuntu+CentOS三系统,由于最后安装的CentOS 其 grub不能引导ubuntu12.04 LTS,只能重装了一下ubuntu,用ubuntu的grub对三个系统进行引导。重装ubuntu后首要做的事情就是安装JDK了。现在整理一下安装 JDK的过程分享给大家。
安装JDK其实只要搞定两个问题,安装目录以及配置文件。如果你只想要快速安装JDK,请略 过此部分直接看安装篇。
网上的安装JDK资料中安装目录基本有两种——/opt和/usr/local。这两个目录 安装在哪里其实都无所谓,只不过在以前的linux中人们习惯将软件安装在/usr/local中。这里推荐/opt目录。
网上好多人提到了/etc/environment,/etc/profile,/etc /bash.bashrc,~/.bashrc 这四个配置。那JDK环境变量到底应该配在哪里呢?
/etc/environment:设置整个系统的环境,与登录用户无关
/etc/profile:系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行并从/etc/profile.d目录的配置文件
中搜集shell的设置
/etc/bash.bashrc:为每一个运行bash
shell的用户执行此文件.当bash shell被打开时,该文件被读取.
~/.bashrc: 该文件包含专用于该登录用户bash
shell的bash信息,当登录时以及每次打开新的shell时该该文件被读取
/etc/environment:重启生效
/etc/profile:注销后登录生效
/etc/bash.bashrc:重新打开bash shell后生效
~/.bahsrc:重新打开bash shell后生效
对于安装JDK来说,JDK的环境变量肯定是与用户有关的,所以/etc /environment就不太适合,而用户可能不只一个,所以 ~/.bahsrc也不适合。
我首先想到的就是将JDK环境变量配置在/etc/profile中。可是这样遇到了点小问 题。 配置好后注销系统后登录,对于普通用户java环境变量生效了,但sudo su获得root权限后java环境变量就不可用了。如下图:
查阅资料,可以su – root这样切换到root用户后才会生效。如下图:
如果你此时使用root用户登录,运行java -version看的话其实JDK环境变量是生效的。我怀疑sudo su虽然获得了root权限,但是root用户是没有登录的,所以root用户就没有执行/etc/profile。还有man su,“-”的意思是“使得shell为可登录的shell”。至于到底是不是这个原因,如果你知道,还请留言告知。
另外如果将JDK环境变量配置在/etc/bash.bashrc中,如果java程序不是 在shell中启动的,比如eclipse,这样就读不到JDK环境变量,导致无法运行。
经过上面的分析给出解决方案:
将JDK同时配置在/etc/profile和/etc /bash.bashrc中
32位系统请下载 jdk-6u37-linux-i586.bin
64位系统请下载
jdk-6u37-linux-x64.bin
我这里使用64位版本
1 # mv jdk-6u37-linux-x64.bin /opt
1 chmod +x jdk-6u37-linux-x64.bin 2 ./jdk-6u37-linux-x64.bin
四,设置环境变量
在两个文件的末尾都加上下面一段
1 #set java environment 2 export JAVA_HOME=/opt/jdk1.6.0_37 3 export JRE_HOME=/opt/jdk1.6.0_37/jre 4 export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH 5 export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
java -version
文章转载自: 码农博客 ubuntu下
安装JDK详解
原文链接地址:
http://www.neversaydie.cc/ubuntu-install-jdk-in-detailed/
也可参考这里:http://blog.chinaunix.net/uid-26404477-id-3471246.html
原文:http://www.cnblogs.com/duchuan/p/3734576.html