解读Java环境变量配置

发表于:2011-12-26 09:45

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:mousekitty    来源:51Testing软件测试网采编

  1、查看当前可用的所有环境变量(=系统变量+用户变量)

  set

  查看某个环境变量,如PATH

  set PATH

  添加环境变量,如xxx=aa

  set xxx=aa

  将环境变量(如xxx)的值置为空

  set xxx=

  在某个环境变量(如PATH)后添加新的值(如d:\xxx)

  set PATH=%PATH%;d:\xxx

  [注]:以命令行方式对环境变量的操作只对当前窗口的应用有效!

  2、WindowsJAVA用到的环境变量主要有3个:JAVA_HOME、CLASSPATH、PATH。

  1)JAVA_HOME指向的是JDK的安装路径,如x:\ j2sdk1.4.2,在这路径下你应该能够找到bin、lib等目录。设置方法:JAVA_HOME=c:\ j2sdk1.4.2

  2)PATH变量的作用

  java程序在运行时首先在path变量所定义的路径去找java.exe,并以最先找到的为准,如果安装完j2sdk后不加设置,一般是C:\WINDOWS\system32目录。

  j2sdk1.4(还有其它java开发工具如jbuilder8)在安装后会将java.exe拷贝到C:\WINDOWS\system32目录下,当执行java.exe时,需要装载这个SDK下的一些文件。

  如j2sdk1.4在安装完成后,C:\WINDOWS\system32下的java.exe在运行时会在C:\Program File\java\目录下装载必需的一些文件。但安装j2sdk后一般会在PATH变量的最前面设置C:\ j2sdk1.4.2 \bin。

  当先安装j2sdk1.4.2,后安装jbuilder8等开发工具时,由于jbuilder8的java.exe在拷贝到C:\WINDOWS\system32时可能覆盖了j2sdk1.4.2的java.exe,那么这时在运行的java.exe会到jbuilder8所在的目录去装载必需的一些文件。

  3)CLASSPATH环境变量的作用

  告诉类装载器到哪里去寻找第三方提供的类和用户定义的类。也可用使用JVM命令行参数-classpath分别为应用程序指定类路径,在-classpath中指定的类路径覆盖CLASSPATH环境变量中指定的值。

  3、当机器内装有多个SDK版本时,如何查看所用的是哪个SDK?

  java -verbose

  在出现的屏幕信息中可以看出系统装载的是哪个目录下的文件。

  4、Windows OS下设置PATH的方法

  〔系统〕->〔环境〕-> 〔高级〕,在PATH变量的文本框中的最前面输入C:\ j2sdk1.4.2\bin

  或在命令行窗口中执行 set path=c:\j2sdk1.4.2\bin;%path%; 这样在命令行窗口的任一路径下都可以执行java.exe程序了。或设置PATH=%JAVA_HOME%\bin;%PATH%

  5、对于CLASSPATH环境变量的设置方法要加倍小心,是因为以后你出现的莫名其妙80%以上的怪问题都可能是由于CLASSPATH设置不对引起的

  CLASSPATH=.\;%JAVA_HOME%\lib\tools.jar

  首先要注意的是最前面的".\;",——句点反斜杠分号。这个是告诉JDK,搜索CLASS时先查找当前目录的CLASS文件。

  【Troubleshooting】

  编译会出现以下情况,看你是否真得都理解环境变量的设置,并能解决它。

  [T1] error:java不是一个可运行的程序? 由于没有设置环境变量path

  [T2] error:不能打开某个目录? 可能是忽视了path环境变量中的目录的设置顺序。

  [T3] Exception on thread “main” java.lang.DoClassDefFoundError:Test?没有设置classpath的路径。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号