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