classpath、path、JAVA_HOME的作用及JAVA环境变量配置

CLASSPATH是什么?它的作用是什么?

它是javac编译器的一个环境变量。它的作用与import、package关键字有关。当你写下improt java.util.*时,编译器面对import关键字时,就知道你要引入java.util这个package中的类;但是编译器如何知道你把这个package放在哪里了呢?所以你首先得告诉编译器这个package的所在位置;如何告诉它呢?就是设置CLASSPATH啦 :) 如果java.util这个package在c:/jdk/ 目录下,你得把c:/jdk/这个路径设置到CLASSPATH中去!当编译器面对import java.util.*这个语句时,它先会查找CLASSPATH所指定的目录,并检视子目录java/util是否存在,然后找出名称吻合的已编译文件(.class文件)。如果没有找到就会报错!CLASSPATH有点像c/c++编译器中的INCLUDE路径的设置哦,是不是?当c/c++编译器遇到include 这样的语句,它是如何运作的?哦,其实道理都差不多!搜索INCLUDE路径,检视文件!当你自己开发一个package时,然后想要用这个package中的类;自然,你也得把这个package所在的目录设置到CLASSPATH中去!CLASSPATH的设定,对JAVA的初学者而言是一件棘手的事。所以Sun让JAVA2的JDK更聪明一些。你会发现,在你安装之后,即使完全没有设定CLASSPATH,你仍然能够编译基本的JAVA程序,并且加以执行。

.....................................................................................................................................................

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

%SystemRoot%/system32;%SystemRoot%;%SystemRoot%/System32/Wbem;%SYSTEMROOT%/System32/WindowsPowerShell/v1.0/;C:/Program Files/Common Files/Thunder Network/KanKan/Codecs;C:/Program Files/Microsoft SQL Server/90/Tools/binn/;C:/Program Files/Common Files/TTKN/Bin;C:/Program Files/Common Files/Teleca Shared;C:/Program Files/Java/jdk1.6.0_21/bin

上述只有红色部分;C:/Program Files/Java/jdk1.6.0_21/bin是java的PATH变量,注意变量之间需要用";”隔开。

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

.;C:/Program Files/Java/jdk1.6.0_21/lib/dt.jar;C:/Program Files/Java/jdk1.6.0_21/lib/tools.jar

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

C:/Program Files/Java/jdk1.6.0_21

.....................................................................................................................................................

java环境变量配置步骤:

在windows桌面上右击“我的电脑” —> “属性” —> “高级” —> “环境变量”,在“系统变量”里我们可以看到系统的各个环境变量的值。双击某个变量名可以修改变量值,变量值之间用“;”隔开。我们还可以“新建”原先没有的变量。与jdk有关的有3个环境变量;“JAVA_HOME”,“PATH”,“CLASSPATH”。我的系统中“PATH”变量已经存在,可以直接添加新值(其它变量值不要动,防止其它程序运行异常),其它两个变量需要新建。

CLASSPATH= .;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar

JAVA_HOME = C:/Program Files/Java/jdk1.5.0

PATH  = %JAVA_HOME%/bin;%JAVA_HOME%/jre/bin

从上面我们可以看出,PATH和CLASSPATH都使用到了JAVA_HOME,也可以使用绝对路径,两者皆可。

java_home的配置相关推荐

  1. JAVA_HOME环境配置

    太久没接触java了,连最基本的都忘记了...做个笔记,顺便重新理解一下 转载自:http://blog.csdn.net/wxq1987525/article/details/8045872 jav ...

  2. Centos 配置JAVA_HOME

    yum install java 安装openjdk.安装后,执行echo $JAVA_HOME发现返回为空.说明JAVA_HOME没有配置,需要到/etc/profile中配置JAVA_HOME. ...

  3. 关于环境变量的理解,maven有没有必要配置MAVEN_HOME或M2_HOME,tomcat一定要设置JAVA_HOME环境变量吗

    前言 本文讨论关于环境变量的理解,maven有没有必要配置MAVEN_HOME或M2_HOME,tomcat一定要设置JAVA_HOME环境变量吗 关于环境变量 我们知道配置环境变量后,访问命令可以省 ...

  4. 配置JAVA_HOME环境变量的作用是什么?

    文章目录 配置JAVA_HOME环境变量的作用是什么? 1.前言 2.探索 2.1使环境变量中配置的jdk版本与IDEA中的jdk版本不同 2.2删除JAVA_HOME环境变量 3.解决 3.1如何指 ...

  5. Mac配置JAVA_HOME环境变量

    配置bash_profile 在Mac终端执行如下命令,可以看到Java的安装目录 /usr/libexec/java_home# 输出: /Library/Java/JavaVirtualMachi ...

  6. java记事本环境变量_java环境变量配置以及用记事本写程序

    1.环境变量配置 在安装JDK之后,Java总共需要配置三个环境变量,分别是JAVA_HOME.PATH.CLASSPATH,JAVA_HOME用于配置JDK安装路径,PATH用于配置JDK命令文件的 ...

  7. maven的配置-2019-4-13

    一.Maven的优点 1.  依赖管理 jar 包管理 2.一键构建 (编译-----测试------打包-----安装-----部署 ) 什么是项目构建? 指的是项目从编译-----测试------ ...

  8. maven的安装和环境配置的过程记录

    [前置环境确认]第一步确认本机已正确安装jdk,并且已经在环境变量中配置JAVA_HOME,修改了Path.cmd命令行中输入echo %JAVA_HOME%,查看JAVA_HOME是否配置.在CMD ...

  9. Mac Appium 环境配置

    一.  安装JDK (1) 安装1.8版本的JDK,下载链接: https://pan.baidu.com/s/1sloMOCt 密码: nw72(已过期) 可以到官网下载:http://www.or ...

最新文章

  1. html标签处理数据时合并空格
  2. 使用Keras和TensorFlow构建深度自动编码器
  3. 基于Java+SpringBoot+vue+element实现前后端分离蛋糕商城系统详细设计
  4. 国外公司技术博客盘点
  5. 01.LoT.UI 前后台通用框架分解系列之——小图片背景全屏显示(可自动切换背景)...
  6. python3.6 配置COCO API出错解决方案
  7. 译林 五年级上 单词_译林版小学英语五上Unit 4 HobbiesStory time公开课优质课件教案视频教案...
  8. unity蛮牛游戏API
  9. 视觉SLAM十四讲 第9讲 卡尔曼滤波
  10. 伍德里奇计量经济学导论第6版笔记和课后习题答案
  11. 详解使用可道云Kodbox快速在云服务器上搭建云盘
  12. 【交换基础】交换基础知识总结
  13. HiveSQL小练习--求连续消费的天数
  14. java安装_Java开发人员应该知道的7种新工具
  15. 苹果手机有没有计算机记录,苹果手机中的safari浏览记录怎么恢复?苹果恢复大师教你...
  16. 闲置电脑挂机赚钱-Traffmonetizer,支持windows,linux,Android,MacOS多平台
  17. 魅蓝e android无限重启,魅蓝E怎么Root?魅蓝E一键ROOT教程(系统自带Root功能)
  18. python血脉贲张的cosplay小姐姐图片
  19. SecureCRT连接服务器报错Failed to open the host key database file解决方法
  20. 海航重组当当,航机飘上书香

热门文章

  1. 关于 RTOS 的选择
  2. 从医记之程序员请呵护你的胃
  3. uint64 和字符串相互转换
  4. handlebars学习总结
  5. java操作svn工具类
  6. (二)什么是Reactor模式
  7. 自编码器与堆叠自编码器简述
  8. Android 模拟屏幕点击和物理按键方式
  9. 研究生语音识别课程作业记录(三) 非特定人孤立词识别
  10. 速卖通,aliexpress,关键词搜索,获取商品数据,销量,评价,价格,上架时间,图片,openpyxl 写入excel中