• Java入门:Java环境变量PATH、CLASSPATH、JAVA_HOME


    一些初学者在用java HelloWorld指令运行程序的时候出现:

    Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld

    或者在编译javac HelloWorld.java程序的时候会看到如下错误提示:

    javac: 无效的标记: HelloWorld.class
    用法: javac <options> <source files>
    -help 用于列出

    出现这样的错误,主要是因为环境变量配置错误引起的。

    (一)首先,编译是出现的错误提示,意思是找不到HelloWorld.class文件,此时需要注意检查:

    1. 编译时所在的路径与HelloWorld.java程序路径是否在同一个目录下。如果当前工作目录是C:,而程序放在C:Test目录下,就会出现此错误。

    2. 检查指令中指定的HelloWorld.java文件名称与类名称是否一致。

    3.如果在C:目录下使用指令:javac HelloWorld.java编译C:TestHelloWorld.java代码,就需要指定HelloWorld.java的全路径。即:javac C:TestHelloWorld.java。

    (二)对于运行java HelloWorld出现的错误,主要是没有将当前目录配置到CLASSPATH环境变量里面去(具体配置方法请自行百度)。

    如果想像编译那样,java C:TestHelloWorld,即命令里指定HelloWorld.java全路径,即使当前目录是C:Test也会照样出错。明明C:TestHelloWorld是一个.class文件(假设已经正确编译后生成了HelloWorld.class文件),为什么就找不到呢?原来,Java对待.java文件与.class文件是有区别的。对.java文件可以直接指定路径给它,而java命令所需的.class文件不能出现扩展名,也不能指定额外的路径给它。

    那么,如何指定路径呢?对于Java所需的.class文件,必须通过classpath来指定。在CLASSPATH环境变量中添加一个点号(即:.)就表示将当前路径配置到CLASSPATH中了。

    (三)有关java的环境变量解释

    1. PATH环境变量。作用是指定命令搜索路径,在命令行下面执行命令如javac编译java程序时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。我们需要把jdk安装目录下的bin目录增加到现有的PATH变量中,bin目录中包含经常要用到的可执行文件如javac/java/javadoc等待,设置好PATH变量后,就可以在任何目录下执行javac/java等工具了。

    2. CLASSPATH环境变量。作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPATH来寻找类的.class文件。我们需要把jdk安装目录下的lib子目录中的dt.jar和tools.jar设置到CLASSPATH中,当然,当前目录“.”也必须加入到该变量中。

     javac -c  路径 (可以指定class文件存放目录)

     java -cp  路径  (可以指定要执行的class目录,如java -cp C:Test HelloWorld)

    3. JAVA_HOME环境变量。它指向jdk的安装目录,Eclipse/NetBeans/Tomcat等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的jdk。

    希望对初学者有帮助。

    1. PATH环境变量。作用是指定命令搜索路径,在命令行下面执行命令如javac编译java程序时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。我们需要把jdk安装目录下的bin目录增加到现有的PATH变量中,bin目录中包含经常要用到的可执行文件如javac/java/javadoc等待,设置好PATH变量后,就可以在任何目录下执行javac/java等工具了。

    2. CLASSPATH环境变量。作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPATH来寻找类的.class文件。我们需要把jdk安装目录下的lib子目录中的dt.jar和tools.jar设置到CLASSPATH中,当然,当前目录“.”也必须加入到该变量中。

     javac -c  路径 (可以指定class文件存放目录)

     java -cp  路径  (可以指定要执行的class目录)

    3. JAVA_HOME环境变量。它指向jdk的安装目录,Eclipse/NetBeans/Tomcat等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的jdk。

  • 相关阅读:
    【转】[Python小记] 通俗的理解闭包 闭包能帮我们做什么?
    【OCR技术系列之六】文本检测CTPN的代码实现
    002. Centos7安装mysql5.5.37
    044. asp.net主题之二为主题添加CSS样式和动态加载主题
    043. asp.net主题之一初识主题和皮肤
    042. asp.net使用缓存来提高母版页的访问性能
    041. asp.net中内容页访问母版页中的控件
    040. asp.netWeb中TreeView控件绑定XML文件
    039. asp.netWeb用户控件之七实现具有虚拟键盘的功能的用户控件
    038. asp.netWeb用户控件之六实现日期选择的用户控件
  • 原文地址:https://www.cnblogs.com/bayes/p/5244755.html
Copyright © 2020-2023  润新知