首页 > Android开发,linux日常 > Linux 下安装配置 JDK7 配置环境(debian 7)

Linux 下安装配置 JDK7 配置环境(debian 7)

自从从Oracle收购Sun近三年来,已经有很多变化。早在8月,甲骨文将“Operating System Distributor License for Java”许可证终结,这意味着第三方将不可以依据这一许可分发他们的软件包。
  因此Ubuntu Linux已经开始禁用所有机器上的Oracle JDK浏览器插件,并很快会从档案中删除软件包。
公司指出,禁用Oracle的插件将可以帮助提高安全性,因为这些插件已经被证实包含许多漏洞,虽然这是一个事实,但真正的原因恐怕是Sun的 JDK在升级时会清理掉用户机器上自认为不安全的软件,大多数PC用户认为这样很安全,但通常基于UNIX系统的用户并不这么认为。
Oracle的JDK被废弃后,OpenJDK将取代它的位置在Ubuntu及其它Linux中默认安装。

虽然很多Linux发行版现在已经自带OpenJDK,但是在开发过程中与Oracle-JDK(SUN-JDK)还是略有不同。通常,Java开发人员还是以Oracle-JDK为标准来进行开发。
下面介绍一下Linux下的JDK安装与配置,这里使用的Linux发行版是Ubuntu 12.04。

1.下载JDK
目前最新的JDK版本是:Java SE Development Kit 7u5

下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

查看最新:http://www.oracle.com/technetwork/java/javase/downloads/index.html

2.解压安装
我们把JDK安装到这个路径:/usr/lib/jvm
如果没有这个目录(第一次当然没有),我们就新建一个目录

cd /usr/lib
sudo mkdir jvm

建立好了以后,我们来到刚才下载好的压缩包的目录,解压到我们刚才新建的文件夹里面去,并且修改好名字方便我们管理

sudo tar zxvf ./jdk-7-linux-i586.tar.gz -C /usr/lib/jvm
cd /usr/lib/jvm
sudo mv jdk1.7.0_05/ jdk7

3.配置环境变量
gedit ~/.bashrc
在打开的文件的末尾添加

export JAVA_HOME=/usr/lib/jvm/jdk7
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

保存退出,然后输入下面的命令来使之生效

source ~/.bashrc
4.配置默认JDK
由于一些Linux的发行版中已经存在默认的JDK,如OpenJDK等。所以为了使得我们刚才安装好的JDK版本能成为默认的JDK版本,我们还要进行下面的配置。
执行下面的命令:

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk7/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk7/bin/javac 300

注意:如果以上两个命令出现找不到路径问题,只要重启一下计算机在重复上面两行代码就OK了。

执行下面的代码可以看到当前各种JDK版本和配置:

sudo update-alternatives --config java

5.测试
打开一个终端,输入下面命令:

java -version

显示结果:

java version "1.7.0_05"
Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
Java HotSpot(TM) Server VM (build 23.1-b03, mixed mode)

这表示java命令已经可以运行了。

====================------------------------------------------================

由于测试机系统是 Debian x86_64 GNU/Linux   64位系统
故jdk版本也必须是64位----  jdk-6u27-linux-x64.bin
[html] view plaincopyprint?
# cd /data/postmall  
# chmod u+x jdk-6u27-linux-x64.bin  
# ./jdk-6u27-linux-x64.bin  
# cp -r /data/postmall/jdk1.6.0_27  /usr/local/jdk     复制之后,可以把/data/postmall/下的jdk目录和.bin文件删除,然后在系统初始化脚本中设置java环境变量,  
# vi /etc/profile  
在umask 022下面添加以下设置内容:
[html] view plaincopyprint?
export JAVA_HOME=/usr/local/jdk  
export JRE_HOME=/usr/local/jdk/jre  
export PATH=$PATH:/usr/local/jdk/bin  
export CLASSPATH=./:/usr/local/jdk/lib:/usr/local/jdk/jre/lib  
保存,退出!
shell> source /etc/profile    #使之立即生效
【建议也设置默认启动】
# vi /etc/rc.local
加上:
[html] view plaincopyprint?
export JAVA_HOME=/usr/local/jdk  
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH  
export CLASSPATH=.:/usr/local/jdk/lib:/usr/local/jdk/jre/lib:$CLASSPATH  
export JRE_HOME=/usr/local/jdk/jre  
保存,退出!
退出终端,重启登陆,然后 # java -version 如果有java版本号出来表示成功。

之前在debian上安装jdk一直报错:
[vb] view plaincopyprint?
root@debian-han:/home/jinzhu/jdk# rpm -ivh jre-7u6-linux-x64.rpm   
rpm: RPM should not be used directly install RPM packages, use Alien instead!  
rpm: However assuming you know what you are doing...  
error: Failed dependencies:  
    /bin/basename is needed by jre-1.7.0_06-fcs.x86_64  
    /bin/cat is needed by jre-1.7.0_06-fcs.x86_64  
    /bin/cp is needed by jre-1.7.0_06-fcs.x86_64  
    /bin/gawk is needed by jre-1.7.0_06-fcs.x86_64  
    /bin/grep is needed by jre-1.7.0_06-fcs.x86_64  
    /bin/ln is needed by jre-1.7.0_06-fcs.x86_64  
    /bin/ls is needed by jre-1.7.0_06-fcs.x86_64  
    /bin/mkdir is needed by jre-1.7.0_06-fcs.x86_64  
    /bin/mv is needed by jre-1.7.0_06-fcs.x86_64  
    /bin/pwd is needed by jre-1.7.0_06-fcs.x86_64  
    /bin/rm is needed by jre-1.7.0_06-fcs.x86_64  
    /bin/sed is needed by jre-1.7.0_06-fcs.x86_64  
    /bin/sort is needed by jre-1.7.0_06-fcs.x86_64  
    /bin/touch is needed by jre-1.7.0_06-fcs.x86_64  
    /usr/bin/cut is needed by jre-1.7.0_06-fcs.x86_64  
    /usr/bin/dirname is needed by jre-1.7.0_06-fcs.x86_64  
    /usr/bin/expr is needed by jre-1.7.0_06-fcs.x86_64  
    /usr/bin/find is needed by jre-1.7.0_06-fcs.x86_64  
    /usr/bin/tail is needed by jre-1.7.0_06-fcs.x86_64  
    /usr/bin/tr is needed by jre-1.7.0_06-fcs.x86_64  
    /usr/bin/wc is needed by jre-1.7.0_06-fcs.x86_64  
    /bin/sh is needed by jre-1.7.0_06-fcs.x86_64  

上一篇: Linux下解压:tar、rar、7z命令

下一篇: 安装debian7基本系统后的图形化配置