搭建Java开发环境(二)

在上一篇的博文JavaSE入门学习3:搭建Java开发环境(一)中说到我们配置了Path变量的一种方式,再来说说第

二种配置方式,这种配置方式是必须掌握的。

path环境变量配置方式2

我们为什么要将第二种配置形式呢?那第一种的配置方式有什么缺点吗?假设我的计算机上安装了两个JDK,一

个是1.7,一个1.8,我刚才配置的是1.8的,那么我需要配置1.7,需要重新配置Path环境变量,有可能在修改Path环

境变量的同时误删其它的东西,所以不建议使用第一种。

path环境变量的参照形配置方式的步骤:

a)重新打开系统环境变量Path,将第一种配置的路径删除。

b)创建新的环境变量名称:JAVA_HOME;为JAVA_HOME添加变量值:JDK安装目录,我的也就

是:E:Javadevelopjdk1.8.0_25

c)将path环境变量中JDK目录修改为:%JAVA_HOME%in;(%路径名称%相当于引用路径名称)

d)重新启动DOS,再次使用javac编译Java源文件和java运行字节码文件。

这种方式我们在使用其它的JDK时,可以只修改JAVA_HOME变量,不修改Path变量,这样不会误删其他的东西

造成一些其它程序无法运行。

我们再来看一个在Java程序运行的过程中出现的问题,下面的运行结果就是很好的示例,这就需要用到了另一个

系统变量classpath的配置。

classpath环境变量的配置

我们为什么要配置classpath环境变量?classpath环境变量的作用是什么?

我们在将来的Java程序开发中,只需要字节码文件,假设我们在其它的目录下运行字节码文件,结果是和上面的

一样的,是无法运行。因此上面配置的path环境变量只能在一起使用,如果要实现字节码文件在任意的目录下运行,

就需要配置classpath环境变量。因此它的作用是:使classpath目录中的.class文件可以在任意目录运行。

classpath环境变量配置方式

a)创建新的变量名称:classpath

b)变量值:设定为指定的含有class文件的目录,多个目录间使用分号(;)分割。我指定的目录是:E:JavaJavaSECode;

c)重新启动DOS,使用java运行字节码文件。

d)我们在桌面重新编辑一个Java源文件,要求输出:你好,世界,保存的名称还是HelloWorld.java,继续编译和

运行。

e)上面遇到的问题是我们配置的classpath环境变量只是包含了E:JavaJavaSECode这个目录下的字节码文件,

因此解决的方法是:通常将配置的目录最前面添加.;配置,即便当前目录,使.class文件搜索时首先搜索当前目录,然

后根据目录配置的顺序依次查找,找到后即运行,因此classpath目录中的配置存在先后顺序。

f)重新启动DOS,再次运行桌面上的字节码文件。

我们在网上找到的配置classpath的值可能各不相同,不过其中包含最多的就是下面的三个Java类库文件:rt.jar是

JAVA基础类库,dt.jar是关于运行环境的类库,tools.jar是工具类库。我们来看看这些类库。

1)rt.jar默认就根classloader的加载路径里面放在claspath是多此一举不信你可以去classpath里面的rt.jar然后用 

java -verbose XXXX 的方式运行一个简单的类 就知道JVM的系统根Loader的路径里面不光rt.jar, jrelib下面的大部分

jar都在这个路径里。

2)tools.jar是系统用来编译一个类的时候用到的 也就是javac的时候用到javac XXX.java。实际上就是运行java -

calsspath=%JAVA_HOME%lib ools.jar xx.xxx.Main XXX.javajavac就是对上面命令的封装 所以tools.jar 也不用加到

classpath里面。

3)dt.jar是关于运行环境的类库,主要是swing的包你要用到swing时最好加上。

因此,最后配置的classpath环境变量的值是:.;E:JavaJavaSECode;%JAVA_HOME%libdt.jar;

path和classpath的区别

path环境变量里面记录的是可执行性文件,如.exe文件,对可执行文件先在当前路径去找,如果没找到就去path

环境变量中配置的路径去找

classpath环境变量里记录的是java类的运行文件所在的目录。

java -version 检测JDK版本:

关于搭建Java开发环境的配置就到这里。

文章导航