关于Java的path,classpath,java_home环境变量的配置与具体含义

来源:互联网 发布:centos 6 搜狗输入法 编辑:程序博客网 时间:2024/06/05 18:28

来自 http://blog.sina.com.cn/s/blog_7781d4ed01019d7m.html

关于Java的path,classpath,java_home环境变量的配置与具体含义

 

    对于一个Java初学者来说,第一步要做的是安装jdk并配置环境变量,一般按照书上或者网上的步骤,一步步照着做就行了,但是对于初学者来说,很多问题没有解决,比如为什么很多配置方法各不相同,却都能够配置成功?而且很少有人能够解释清楚path,classpath,java_home的含义是什么。

 

   我刚学Java的时候也是一头雾水,随着学习的深入,逐渐了解了这些变量的含义,在此,把我的一些想法和收获与大家分享。

 

   首先,我们先来看一下通过cmd对Java文件的执行步骤。我之前在E盘Java文件夹下保存了HelloWorld.java文件,下面使用这个文件进行示范。

    首先跳转到Java文件夹目录下

关于Java的path,classpath,java_home环境变量的配置与具体含义

    然后使用javac命令对HelloWorld.java文件进行编译,此时当前目录下会自动生成一个HelloWorld.class文件。

        关于Java的path,classpath,java_home环境变量的配置与具体含义
     这一指令的含义是操作系统调用一个名为javac.exe的应用程序对HelloWorld.java文件进行处理,处理结果保存在一个名为HelloWorld.class文件的文件中。

 

    然后我们使用java命令对HelloWorld.class文件进行执行,屏幕上显示出“HelloWorld!”,表示执行成功。

        关于Java的path,classpath,java_home环境变量的配置与具体含义
      这一指令的含义是操作系统调用一个名为java.exe的应用程序对HelloWorld.class文件进行处理(文件的后缀.class应省略掉)。执行结果出现在屏幕上。

 

       现在我们有一个疑问,系统是如何找到并调用javac.exe和java.exe两个应用程序的?打个比方,平时我们运行某一程序,比如魔兽,酷狗音乐,都是先找到它们的应用程序war3.exe和kugou.exe的所在位置,然后双击运行。那么操作系统是如何自动找到javac.exe和java.exe的位置呢?这就是path环境变量的作用。

 

       path变量的值一般是一连串的目录,当初操作系统需要调用某一应用程序时,会默认的根据path变量的值,在各目录中依次搜索该应用程序,直到找到为止,否则返回错误提示。

 

      本例中系统会根据path变量的值,依次在各个目录下查找javac.exe和java.exe两个应用程序,所以我们要将javac.exe和java.exe的所在目录添加到path环境变量的值中。如图所示,jdk的各个应用程序一般都在安装文件目录下的bin文件夹中,所以我们就应该在path中添加“C:\ProgramFiles\Java\jdk1.6.0_22\bin”这个目录。注意,目录之间用分号“;”隔开;目录位置是在前还是在后没影响,反正系统是要依次查找的。
 关于Java的path,classpath,java_home环境变量的配置与具体含义
    下面我们来讨论classpath环境变量的作用。它的值也是由目录组成,它的作用在于告诉Java执行环境,在哪些目录下可以找到所要执行的Java程序所需要的类或者包。比如我要运行一个名为Test.class的文件,而这个程序调用了另一个Link.class文件的内容,那么系统必须知道Link.class文件的位置才能调用Link.class文件。如果Link.class文件的目录在classpath环境变量的值中,就可以找到了。

 

    事实上,从jdk5.0开始,会默认在当前目录和jdk的lib目录中(C:\ProgramFiles\Java\jdk1.6.0_22\lib)查找,如果所需的.class文件都在上述两个目录中,则classpath的值只需设置为“.;”,这个点表示当前目录。否则要根据情况添加classpath的值。

 

     至于java_home环境变量,可有可无。java_home一般设置为jdk的安装目录,比如C:\ProgramFiles\Java\jdk1.6.0_22。如果设置了java_home,那么path环境变量可以配置为“%java_home%\bin”,可以看出java_home的作用是使得其他相关环境变量的配置更加方便简洁。

 

    以我的Java环境变量为例,我只配置了两个环境变量

    path:  C:\Program Files\Java\jdk1.6.0_22

     classpath:.;

 

    希望以上内容对大家有所帮助。

0 0
原创粉丝点击