Linux下配置Java环境变量

来源:互联网 发布:关于淘宝的书籍 编辑:程序博客网 时间:2024/05/19 13:22
一. 解压安装jdk 
在shell终端下进入jdk-6u37-linux-i586.bin文件所在目录,执行命令 ./jdk-6u37-linux-i586.bin 这时会出现一段协议,敲回车,当询问是否同意的时候,输入yes,回车。之后会在当前目录下生成一个jdk1.6.0_37目录,你可以将它复制到/usr/local/apps目录下。 

二. 需要配置的环境变量 
1. PATH环境变量。作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。我们需要把 jdk安装目录下的bin目录增加到现有的PATH变量中,bin目录中包含经常要用到的可执行文件如javac/java/javadoc等待,设置好 PATH变量后,就可以在任何目录下执行javac/java等工具了。 
2. CLASSPATH环境变量。作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPTH来寻找类的。我们 需要把jdk安装目录下的lib子目录中的dt.jar和tools.jar设置到CLASSPATH中,当然,当前目录“.”也必须加入到该变量中。 
3. JAVA_HOME环境变量。它指向jdk的安装目录,Eclipse/NetBeans/Tomcat等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的jdk。 

三. 三种配置环境变量的方法

1. 修改/etc/profile文件 

如果你的计算机仅仅作为开发使用时推荐使用这种方法,因为所有用户的shell都有权使用这些环境变量,可能会给系统带来安全性问题。 
·用文本编辑器打开/etc/profile 
·在profile文件末尾加入: 
export JAVA_HOME=/usr/local/apps/jdk1.6.0_37
export PATH=$JAVA_HOME/bin:$PATH 
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 

·退出重新登录或者执行命令 source /etc/profile
·注 
a. 你要将 /usr/local/apps/jdk1.6.0_37 改为你的jdk安装目录 
b. Linux下用冒号“:”来分隔路径 
c. $PATH、$CLASSPATH、$JAVA_HOME 是用来引用原来的环境变量的值,在设置环境变量时特别要注意不能把原来的值给覆盖掉了,这是一种常见的错误。 
d. CLASSPATH中当前目录“.”不能丢,把当前目录丢掉也是常见的错误。 
e. export是把这三个变量导出为全局变量。 
f. 大小写必须严格区分。 

2. 修改.bash_profile文件 
这种方法更为安全,它可以把使用这些环境变量的权限控制到用户级别,如果你需要给某个用户权限使用这些环境变量,你只需要修改其个人用户主目录下的.bash_profile文件就可以了。 
·用文本编辑器打开用户目录下的.bash_profile文件 
·在.bash_profile文件末尾加入: 

export JAVA_HOME=/usr/local/apps/jdk1.6.0_37
export PATH=$JAVA_HOME/bin:$PATH 
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 

·退出重新登录或者执行命令 source /home/.../.bash_profile 

3. 直接在shell下设置变量 
不赞成使用这种方法,因为换个shell,你的设置就无效了,因此这种方法仅仅是临时使用,以后要使用的时候又要重新设置,比较麻烦。 
只需在shell终端执行下列命令: 
export JAVA_HOME=/usr/local/apps/jdk1.6.0_37
export PATH=$JAVA_HOME/bin:$PATH 
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 

四. 测试jdk 

1. 执行命令 java -version 会有如下信息

java version "1.6.0_37"Java(TM) SE Runtime Environment (build 1.6.0_37-b06)Java HotSpot(TM) Client VM (build 20.12-b01, mixed mode, sharing)

2.用vi新建一个Foo.java文件,在其中输入以下代码并保存: 

public class Foo {        public static void main(String[] args) {                System.out.println("Hello World!\n");        }}

3. 编译:在shell终端执行命令 javac Foo.java 

4. 运行:在shell终端执行命令 java Foo 当shell下出现“Hello World!”字样则jdk运行正常。 

五. 卸载jdk 
·删除上述环境变量配置
·删除目录/usr/local/apps/jdk1.6.0_37