大凡装过JDK的人都知道要安装完成后要设置环境变量,可是为什么要设置环境变量呢?环境变量有什么作用?

1)PATH详解:

计算机安装JDK之后,输入“javac”“java”之类的命令是不能马上被计算机正确执行的,因为计算机不知道到哪里去找这两个命令。

计算机如何查找命令呢?Windows操作系统根据PATH环境变量来查找命令。PATH环境变量的值是一系列路径,Windows操作系统将在这一系列的路径中依次查找命令,如果能找到这个命令,则该命令是可执行的;否则将出现“‘XXX’不是内部命令或外部命令,也不是可运行的程序或批处理文件”的提示。而Linux操作系统则根据PATH环境变量来查找命令,PATH环境变量的值也是一系列路径。因为Windows操作系统不区分大小写,设置Path和PATH并没有区别;而Linux操作系统是区分大小写的,设置Path和PATH是有区别的,因此只需要设置PATH环境变量即可。

对于Windows系统而言,名为Path的系统环境变量已经存在,可以直接修改该环境变量,在该环境变量值后面追加如   D:\Java\jdk1.7.0\bin(JDK的安装路径)。或者新建一个名为PATH的环境变量,设置它的值为 D:\Java\jdk1.7.0\bin

Linux平台下的环境变量是通过 .bash_profile 文件来设置的。在该文件的PATH变量后面添加:/home/Java/jdk1.7.0 /bin(JDK安装路径)

PATH= .:$PATH : $HOME/bin : /home/Java/jdk1.7.0/bin

完成了PATH变量的设置后,在 .bash_profile 文件最后添加导出PATH变量的语句

export PATH

重新登陆Linux或执行如下命令让文件中的PATH变量生效:

source .bash_profile

2)CLASSPATH详解:

实际上,如果使用1.5版本以上的JDK,完全可以不用设置CLASSPATH环境变量。

CLASSPATH环境变量的作用是什么呢?在1.4版本以前的JDK,当使用“java 类名”命令来运行Java程序时,计算机根据CLASSPATH搜寻Java类。

1.4以前的版本,常常需要设置CLASSPATH环境变量的值为 .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar (其中JAVA_HOME环境变量应指向JDK的安装目录)

后来的JRE会自动搜索当前路径下的类文件,自动加载dt.jar和tools.jar文件中的Java类,不需要设置CLASSPATH环境变量。一旦设置了该环境变量,JRE将只按照环境变量的设置来搜索Java类,所以环境变量一定要设置正确。

如果想在运行Java时临时指定JRE搜索Java类的路径,可以使用 -classpath 选项,Linux上用冒号(:)隔开

java -classpath dir1;dir2,...;dirN  Java类

或者

java -classpath %CLASSPATH%;.;dir1;dir2,...;dirN  Java类

PATH环境变量和CLASSPATH环境变量详解的更多相关文章

  1. Linux centos7环境下安装JDK的步骤详解

    Linux centos7环境下安装JDK的步骤详解 测试root用户下JAVA版本 输入命令:   java –version 1.先到Oracle官网里下载好jdk,网址如下: http://ww ...

  2. unity3d-配置Android环境,打包发布Apk流程详解

    31:unity3d-配置Android环境,打包发布Apk流程详解 作者 阿西纳尼 关注 2016.08.28 22:52 字数 498 阅读 1806评论 0喜欢 5 Unity配置Android ...

  3. Linux centos7环境下安装MySQL的步骤详解

    Linux centos7环境下安装MySQL的步骤详解 安装MySQL mysql 有两个跟windows不同的地方 1).my.ini 保存到/etc/my.ini 2).用户权限,单独用户执行 ...

  4. libCURL开源库在VS2010环境下编译安装,配置详解

    libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...

  5. Java基础-变量的定义以及作用域详解

    Java基础-变量的定义以及作用域详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.字面量 常量(字面量)表示不能改变的数值(程序中直接出现的值).字面量有时也称为直接量,包 ...

  6. C#环境变量配置及csc命令详解(转自cy88310)

     C#环境变量设置步骤: 在桌面右击[我的电脑]->[属性]->[高级]->[环境变量] 在下面的系统变量栏点击"新建" 变量名输入"csc" ...

  7. Jdk在window环境下的安装与配置详解

    本文为博主原创,转载请注明出处: 1.2  Java程序开发环境的配置 java开发工具包:java开发工具:记事本 IDE,这个只能写小程序,写大程序需要集成开发工具:反编译工具(我们可以在网上找一 ...

  8. c#(winform)环境下使用动态链接库dll的详解

    1,什么是dll文件? DLL(Dynamic Link Library)文件为动态链接库文件,又称“应用程序拓展”,是软件文件类型.在Windows中,许多应用程序并不是一个完整的可执行文件,它们被 ...

  9. JavaScript 变量、作用域及内存详解

    基本类型值有:undefined,NUll,Boolean,Number和String,这些类型分别在内存中占有固定的大小空间,他们的值保存在栈空间,我们通过按值来访问的. (1)值类型:数值.布尔值 ...

随机推荐

  1. 算法系列1《DES》

    1. DES算法简介 DES算法全称为Data Encryption Standard,即数据加密算法,它是IBM公司于1975年研究成功并公开发表的.DES算法的入口参数有三个:Key.Data.M ...

  2. sqlserver中查找长时间未提交事务

    无论是有意无意,如果事务在数据库中保持打开,则它会阻塞其他进程对修改后的数据进行操作.同样,对事务日志进行备份也只会截断不活动事务的那部分事务日志,所以打开的事务会导致日志变多(甚至达到物理限制),直 ...

  3. DB2建立不记录日志的表

    )); ,'JACK'); ,'Timo'); -----建立无日日志表 --方法一:(表存在) CREATE TABLE TB_7 LIKE TB_6 NOT LOGGED INITIALLY; - ...

  4. Spring的IoC应用

    IoC(Inversion of Control,控制反转) Spring的IoC应用是其框架的最大的特点,通过依赖注入可以大大降低代码之间的耦合度,从而实现代码和功能之间的分离.在代码中可以不直接和 ...

  5. SpringMvc中Interceptor拦截器用法

    SpringMVC 中的Interceptor 拦截器也是相当重要和相当有用的,它的主要作用是拦截用户的请求并进行相应的处理.比如通过它来进行权限验证,或者是来判断用户是否登陆等. 一. 使用场景 1 ...

  6. DeviceOne开发HelloWord

    http://www.cnblogs.com/wjiaonianhua/p/5278061.html http://www.jb51.net/article/75693.htm 2015 年 9 月 ...

  7. Entity Framework学习笔记(一)

    请注明转载地址:http://www.cnblogs.com/arhat 哈哈!老魏回来了,4月份的内容开始更新了,由于3月份时间都在做项目,没有时间写了,那么4月份老魏会尽可能的多写点东西的.那么4 ...

  8. ASP.NET&AJAX&JSON - 动态读取数据

    因为之前帮WM组做了一个delivery的dashboard,大概用了3周的时间,.net也忘了差不多了,ajax和highchart表也是现学的,蛮费劲!总算也搞出来了.发帖纪录一下. 1. 前台A ...

  9. 零基础学习Linux(一)环境搭建

    从本文开始我会为大家介绍一下linux环境下详细的集群环境安装.配置.部署到实例演示的整个过程.在此过程中会给大家详细介绍一下Linux的操作技巧和一些工具的使用.今天开始第一步——环境搭建. 第一步 ...

  10. python 通过urllib模块在svn中下载文件

    #_*_coding:utf-8_*_ import urllib def Schedule(a,b,c): ''' a:已经下载的数据块 b:数据块的大小 c:远程文件的大小 ''' per = 1 ...