PATH和CLASSPATH

本节介绍如何在Microsoft Windows,Solaris和Linux上使用PATHCLASSPATH环境变量,有关最新信息,请参阅安装Java Development Kit(JDK)软件包中随附的安装说明。

安装软件后,JDK目录将具有如下所示的结构。

environment-directories.gif

bin目录包含编译器和启动器。

更新PATH环境变量(Microsoft Windows)

你可以在不设置PATH环境变量的情况下正常运行Java应用程序,或者,你可以选择将其设置为方便。

如果希望能够从任何目录方便地运行可执行文件(javac.exe,java.exe,javadoc.exe等)而无需键入命令的完整路径,请设置PATH环境变量,如果未设置PATH变量,则需要在每次运行时指定可执行文件的完整路径,例如:

C:\Java\jdk1.7.0\bin\javac MyClass.java

PATH环境变量是由分号(;)分隔的一系列目录,Microsoft Windows从左到右依次查找PATH目录中的程序,一次只能在路径中为JDK创建一个bin目录(忽略第一个后面的目录),因此如果已经存在,则可以更新该特定条目。

以下是PATH环境变量的示例:

C:\Java\jdk1.7.0\bin;C:\Windows\System32\;C:\Windows\;C:\Windows\System32\Wbem

永久设置PATH环境变量非常有用,因此在重新启动后它将保持不变,要永久更改PATH变量,请使用“控制面板”中的“系统”图标,具体过程因Windows版本而异:

Windows XP:

  1. 选择开始,选择控制面板,双击“系统”,然后选择“高级”选项卡。
  2. 单击“环境变量”,在系统变量部分中,找到PATH环境变量并选择它,单击编辑,如果PATH环境变量不存在,请单击“新建”。
  3. 在“编辑系统变量”(或“新建系统变量”)窗口中,指定PATH环境变量的值,单击确定,单击“确定”关闭所有剩余窗口。

Windows Vista:

  1. 在桌面上,右键单击“我的电脑”图标。
  2. 从上下文菜单中选择“属性”。
  3. 单击“高级”选项卡(Vista中的“高级系统设置”链接)。
  4. 单击“环境变量”,在系统变量部分中,找到PATH环境变量并选择它,点击编辑,如果PATH环境变量不存在,请单击“新建”。
  5. 在“编辑系统变量”(或“新建系统变量”)窗口中,指定PATH环境变量的值,单击确定,单击“确定”关闭所有剩余窗口。

Windows 7:

  1. 在桌面上,右键单击“计算机”图标。
  2. 从上下文菜单中选择“属性”。
  3. 单击“高级系统设置”链接。
  4. 单击“环境变量”,在系统变量部分中,找到PATH环境变量并选择它,点击编辑,如果PATH环境变量不存在,请单击“新建”。
  5. 在“编辑系统变量”(或“新建系统变量”)窗口中,指定PATH环境变量的值,单击确定,单击“确定”关闭所有剩余窗口。
从控制面板编辑时,你可能会看到类似于以下内容的PATH环境变量:%JAVA_HOME%\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem,以百分号()括起来的变量是现有的环境变量,如果其中一个变量在“控制面板”的“环境变量”窗口中列出(例如JAVA_HOME),则可以编辑其值,如果没有出现,那么它是操作系统定义的特殊环境变量。例如,SystemRoot是Microsoft Windows系统文件夹的位置,要获取环境变量的值,请在命令提示符处输入以下内容,(此示例获取SystemRoot环境变量的值):echo %SystemRoot%

更新PATH变量(Solaris和Linux)

你可以在不设置PATH变量的情况下运行JDK,也可以选择将其设置为方便,但是,如果希望能够从任何目录运行可执行文件(javac,java,javadoc等)而不必键入命令的完整路径,则应设置路径变量。如果未设置PATH变量,则需要在每次运行时指定可执行文件的完整路径,例如:

% /usr/local/jdk1.7.0/bin/javac MyClass.java

要确定路径是否正确设置,请执行:

% java -version

这将打印java工具的版本,如果它可以找到它,如果版本较旧或者你收到错误java: Command not found,则路径未正确设置。

要永久设置路径,请在启动文件中设置路径。

对于C shell(csh),编辑启动文件(~/.cshrc):

set path=(/usr/local/jdk1.7.0/bin $path)

对于bash,编辑启动文件(~/.bashrc):

PATH=/usr/local/jdk1.7.0/bin:$PATH
export PATH

或者ksh,启动文件由环境变量ENV命名,设置路径:

PATH=/usr/local/jdk1.7.0/bin:$PATH
export PATH

对于sh,编辑配置文件(~/.profile):

PATH=/usr/local/jdk1.7.0/bin:$PATH
export PATH

然后加载启动文件并通过重复java命令验证路径是否已设置:

对于C shell(csh):

% source ~/.cshrc
% java -version

对于ksh、bash或sh:

% . /.profile
% java -version

检查CLASSPATH变量(所有平台)

CLASSPATH变量是告诉应用程序(包括JDK工具)查找用户类的一种方法(属于JRE、JDK平台和扩展的类应该通过其他方式定义,例如引导类路径或扩展目录)。

指定类路径的首选方法是使用-cp命令行开关,这允许为每个应用程序单独设置CLASSPATH,而不会影响其他应用程序,设置CLASSPATH可能很棘手,应谨慎执行。

类路径的默认值为“.”,表示仅搜索当前目录,指定CLASSPATH变量或-cp命令行开关会覆盖此值。

要检查是否在Microsoft Windows NT / 2000 / XP上设置了CLASSPATH,请执行以下命令:

C:> echo %CLASSPATH%

在Solaris或Linux上,执行以下命令:

% echo $CLASSPATH

如果未设置CLASSPATH,你将收到CLASSPATH: Undefined variable错误(Solaris或Linux)或只是%CLASSPATH%(Microsoft Windows NT / 2000 / XP)。

要修改CLASSPATH,请使用与PATH变量相同的过程。

类路径通配符允许你在类路径中包含.jar文件的整个目录,而无需单独指定它们,有关更多信息(包括类路径通配符的说明)以及有关如何清理CLASSPATH环境变量的详细说明,请参阅设置类路径技术说明。


上一篇:系统实用工具

博弈
2.5k 声望1.5k 粉丝

态度决定一切