详解配置java环境变量那点事儿

来源:互联网 发布:单片机开发系统uv4 编辑:程序博客网 时间:2024/06/05 03:04

写在前面

  毫无疑问,配置环境变量是程序猿最重要的基本功之一。但是由于配置环境变量需要了解shell编程的相关知识,很多人往往在配置的过程都是照葫芦画瓢,并不能明白其中的原理。本文主要以配置java环境变量为例,详细讲述在配置开发环境中前因后果。笔者所使用的是ubuntu,windows系统在某些方面会有所差异,但是原理性的东西应该是相同的。

基本步骤

第一步:下载jdk

  首先,从orcale官网上下载java的jdk官方版本,笔者的Linux系统下载的是jdk1.8.0_45.tar.gz,这里tar是Linux的打包命令,gz是使用Linux压缩命令的压缩格式。

第二步:jdk解压

  然后在下载目录,输入下面的命令,将jdk文件解压到制定的目录/opt:

tar zxv -f jdk1.8.0_45.tar.gz -C /opt

  上面z是gzip文件的压缩,解压缩命令,x表示将打包文件extract出来,v是将解压缩过程中涉及到的文件输出到屏幕上,-C是后面接的是输出到指定的目录。如果没有-C的参数,那么默认解压缩到当前目录。

第三步:配置环境变量

  接下来,切换至管理员,这里不同linux发行版会有所差别,

#ubuntu使用sudo -i#centos使用root

  然后用文本编辑器打开,~/.bashrc,配置环境变量。如果是ubuntu的话,直接使用gedit。

gedit ~/.bashrc

  为什么要配置~/.bashrc这个文件呢?原因是Linux在运行之前要首先加载~/.bashrc这个文件进行相关环境变量的配置。
这里写图片描述

  这里重点解释后面四行代码的含义,

(1) JAVA_HOME指的是java的安装目录,这里主要是为了后面表示方便;
(2) JRE_HOME指的是JRE的安装目录,${JAVA_HOME}含义是取出JAVA_HOME这个环境变量的内容,eclipse等java软件运行的时候需要java的运行环境就是JRE;如果没有这一行,你的java程序就不能运行。
(3)至于类路径CLASSPATH则更是一个十分重要的概念,在这个环境变量的设置中,点“.”表示当前目录,javac编译器总是先在当前目录中查找.class文件,如果没有设置当前目录,那么所写的java程序可以编译但是不能运行。后面的lib则是如果你想在编程中引用系统的共享类库,则必须包含;当然可以将自己写的类以包的形式添加到CLASSPATH中,这样就可以共享你写的类的了。具体要怎么实现呢?为了让你有更加直观的认识,还是通过一个例子来解释。

/**假设你的当前目录是/tmp,你在当前目录下创建了一个包,包的名字是example,那*么就意味着你的Example.java文件需要保存在/tmp/example文件夹下,然后你在*~/.bashrc中修改类路径,添加/tmp作为类路径之一,在example文件下面编译,*值得一提的是如果你要运行程序,那么也必须要加上类路径,在此例中就是javac *example.Example,你还可以在其他的类中引用当前的包,通过import exmple;*/package example;public class Example{    .....}

(4)最后一行是更新PATH环境变量的内容,含义就是在原本的PATH之前添加java的二进制文件。这样的原因是因为你在shell中输入的相关的命令,如javac命令,那么系统必须能够从PATH中目录中查找到相关的命令才行。如果没有这一行,那么与jdk相关的命令不能执行。

第四步:

  然后通过下面的命令,让你配置的文件成为环境变量。

source ~/.bashrc#或者. ~/.bashrc

第五步:

  通过编写下面的hello.java文件,文件名要与类名保持一致。

public  class hello{    public static void main(String[] args) {        System.out.println("hello java");    }}

  然后输入下面命令,如果输出hello java,则证明你的java环境变量配置成功啦。

javac hello.javajava hello
0 0
原创粉丝点击