JavaSE入门学习3:搭建Java开发环境

在上一篇的博文中,所编辑的Java源文件和编译的字节码文件是保存在E:\Java\develop\jdk1.8.0_25\bin目录下,

如果编辑的Java源文件和字节码文件没有用了或者想要删掉,我们很容易删除bin目录下的其它运行程序文件。还有

如果想要创建很多个Java源文件或者我们开发Java程序,那么bin目录中会存在很多的Java源文件和字节码文件,因

此我们不会将源文件写在bin目录中,需要我们在另外的文件夹下编辑源文件。

        我们将编辑好的Java源文件保存在E:\Java\JavaSE\Code目录下,我们来使用DOS编译和运行,那么会出现下面

的错误:

JavaSE入门学习3:搭建Java开发环境

        那么我们在当前的文件夹下面怎么做到像在E:\Java\develop\jdk1.8.0_25\bin目录下那样,使用javac编译Java源

件和使用java运行字节码文件呢?

       我们都知道在DOS中可以使用notepad命令打开记事本,我们来看看,在任何盘符或任意的目录中,它是否可以

打开记事本:

JavaSE入门学习3:搭建Java开发环境

        经过上面的测试我们可以在计算机中任何的目录下打开记事本,我们想要的编译的Java源文件也需要这样,在任

何的目录下或指定的目录下都可以编译Java源文件和运行Java程序。我们可以模仿打开记事本的方式使用javac命

令。这就需要进行环境变量的配置。

       首先我们来看path环境变量。

       (1)为什么要配置path环境变量呢?我们来看看path环境变量的作用。

       程序的执行需要使用外部指令javac,但是javac指令仅仅能在JDK安装目录下的bin目录下时候,因此程序只能写

入bin目录。程序开发过程中,不能将源代码写入JDK的安装目录,因此需要将源程序保存到任意位置的指定目录(建

使用英文目录),所以需要使javac指令在任意目录下可以运行。也就是说.exe结尾的程序就可以在任意的盘符中打

开。下面就来看看配置的方式。

       (2)path环境变量配置方式1

       通过配置path环境变量,将javac指令所在目录也就是JDK安装目录下的bin目录配置到path变量下,即可使javac

指令在任意目录下运行。将JDK安装目录下的bin目录添加到最左边并添加分号。

       配置步骤:

       a)找到JDK安装目录下的bin目录,我的是:E:\Java\develop\jdk1.8.0_25\bin

JavaSE入门学习3:搭建Java开发环境

       b)右键点击桌面计算机——选择属性——选择高级系统设置

JavaSE入门学习3:搭建Java开发环境

       c)在打开的系统属性对话框中选择高级,再找到环境变量

JavaSE入门学习3:搭建Java开发环境

       d)在环境变量的对话框中找到系统变量中的Path环境变量,点击编辑。

JavaSE入门学习3:搭建Java开发环境

       e)将E:\Java\develop\jdk1.8.0_25\bin;粘贴到Path环境变量的最前边(建议在最前边),点击确定。

JavaSE入门学习3:搭建Java开发环境

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

JavaSE入门学习3:搭建Java开发环境

        

再来说说第二种配置方式,这种配置方式是必须掌握的。

       path环境变量配置方式2

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

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

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

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

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

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

是:E:\Java\develop\jdk1.8.0_25

JavaSE入门学习3:搭建Java开发环境

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

JavaSE入门学习3:搭建Java开发环境

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

JavaSE入门学习3:搭建Java开发环境

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

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

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

系统变量classpath的配置。

JavaSE入门学习3:搭建Java开发环境

       classpath环境变量的配置

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

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

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

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

      classpath环境变量配置方式

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

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

JavaSE入门学习3:搭建Java开发环境

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

JavaSE入门学习3:搭建Java开发环境

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

运行。

JavaSE入门学习3:搭建Java开发环境

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

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

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

JavaSE入门学习3:搭建Java开发环境

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

JavaSE入门学习3:搭建Java开发环境

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

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

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

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

jar都在这个路径里。

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

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

classpath里面。

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

      因此,最后配置的classpath环境变量的值是:.;E:\Java\JavaSE\Code;%JAVA_HOME%\lib\dt.jar;

JavaSE入门学习3:搭建Java开发环境

       path和classpath的区别

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

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

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

        java -version 检测JDK版本:

JavaSE入门学习3:搭建Java开发环境

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