Java CLASSPATH配置

在安装Java的过程中需要配置环境变量(Environment Variables),本文记录如何配置PATHCLASSPATH

PATH环境变量

PATH变量用来将JAVA_HOME/bin目录下诸如javajavac等命令加入环境变量,以便在任何地方都可以运行这些命令。PATH变量一般配置如下:

export JAVA_HOME=path/to/java_home
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

CLASSPATH环境变量

CLASSPATH变量是用来指定Java类所在的目录,当运行Java程序的时候要指定相应的类名,但是这个类在哪个路径如果没有明确指出的话就会报如下错误:

Error: Could not find or load main class

通常的CLASSPATH配置如下:

export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar

其中明确指出了三个路径:

  • .: 当前路径下的类
  • $JAVA_HOME/lib/tools.jar: 运行环境类库,主要是Swing包。
  • $JAVA_HOME/lib/dt.jar: 工具类库,是Java工具实际运行的类。

所以,如果想不借助IDE单独运行Java程序,可以通过如下方式:

javac HelloWorld.java
java HelloWorld

这里可以运行成功是因为环境变量里面配置了当前路径为CLASSPATH,也可以通过-classpath选项手动指定:

java -classpath /path/to/class HelloWorld
java -classpath /path/one/to/class;/path/two/to/class HelloWorld