当我将CLASSPATH
变量更改为JUNIT_HOME/junit-4.12.jar
系统变量时,我的 Java 命令停止工作。
例如,当我想执行一个类文件时,我收到错误“无法找到或加载主类”,但javac
工作正常。
当我删除 时CLASSPATH
,该java
命令再次开始工作。
当我将CLASSPATH
变量更改为JUNIT_HOME/junit-4.12.jar
系统变量时,我的 Java 命令停止工作。
例如,当我想执行一个类文件时,我收到错误“无法找到或加载主类”,但javac
工作正常。
当我删除 时CLASSPATH
,该java
命令再次开始工作。
该CLASSPATH
变量是告诉应用程序(包括 JDK 工具)在哪里查找用户类的一种方式。当您执行 java 命令启动 Java 应用程序时,它会启动 Java 运行时环境,加载指定的类,并调用该类的 main 方法。
如果您的CLASSPATH
变量设置为JUNIT_HOME/junit-4.12.jar
,则只会JUNIT_HOME/junit-4.12.jar
加载 中的类。因此,您将收到Could not find or load main class
错误消息。
指定类路径的首选方法是使用-cp
命令行开关。这允许CLASSPATH
为每个应用程序单独设置而不影响其他应用程序。
类路径的默认值为"."
,表示只搜索当前目录。如果您还想在其他目录中查找 classes 文件,例如 classes in c:\otherDirectory
,您可以将类路径设置为以下内容:
java -classpath ".;c:\otherDirectory"
你有更多的 jars 需要放在类路径上吗?JUNIT 仅用于测试目的,我猜您还需要在类路径上添加您正在使用的所有依赖项。另一方面,通过系统环境变量来做到这一点并不是一个好主意。另请查看java -classpath
命令,然后您可以为一个应用程序或命令添加类路径依赖项。