文档

Java™ 教程-Java Tutorials 中文版
PATH 和 CLASSPATH
Trail: Essential Classes
Lesson: The Platform Environment

PATH 和 CLASSPATH

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

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

JDK 目录结构

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

更新 PATH 环境变量(Microsoft Windows)

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

设置 PATH 环境变量,可以使你能够方便地运行可执行文件(javac.exe,java.exe,javadoc.exe 等),而无需键入命令的完整路径。如果未设置 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 变量,请使用“控制面板”中的 System 图标。具体过程因 Windows 版本而异:

Windows XP
  1. 选择 Start,选择 Control Panel。双击 System,然后选择 Advanced 选项卡。
  2. 单击 Environment Variables。在 System Variables 部分中,找到 PATH 环境变量并选择它。单击 Edit。如果 PATH 环境变量不存在,请单击 New。
  3. 在 Edit System Variable(或 New System Variable)窗口中,指定 PATH 环境变量的值。单击 OK。单击 OK 关闭所有剩余窗口。
Windows Vista:
  1. 在桌面上,右键单击 My Computer 图标。
  2. 从上下文菜单中选择 Properties。
  3. 单击 Advanced 选项卡(Vista 中的 Advanced system settings 链接)。
  4. 单击 Environment Variables。在 System Variables 部分中,找到 PATH 环境变量并选择它。单击 Edit。如果 PATH 环境变量不存在,请单击 New。
  5. 在 Edit System Variable(或 New System Variable)窗口中,指定 PATH 环境变量的值。单击 OK。单击 OK 关闭所有剩余窗口。
Windows 7:
  1. 在桌面上,右键单击 Computer 图标。
  2. 从上下文菜单中选择 Properties。
  3. 单击 Advanced system settings 链接。
  4. 单击 Environment Variables。在 System Variables 部分中,找到 PATH 环境变量并选择它。单击 Edit。如果 PATH 环境变量不存在,请单击 New。
  5. 在 Edit System Variable(或 New System Variable)窗口中,指定 PATH 环境变量的值。单击 OK。单击 OK 关闭所有剩余窗口。

注意: 从控制面板编辑时,你可能会看到类似于以下内容的 PATH 环境变量:
%JAVA_HOME%\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem
以百分号(%)括起来的变量是现有的环境变量。如果其中一个变量列在控制面板的 Environment Variables 窗口中(例如 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 环境变量的详细说明,请参阅 Setting the Class Path 技术说明。


Previous page: Miscellaneous Methods in System
Next page: Questions and Exercises: The Platform Environment