【2020/3/12】Java 提示 java.lang.ClassNotFoundException(错误: 找不到或无法加载主类)的解决办法

1、在用 java.exe 运行指定的 .java 字节码文件之前,需要先用 javac.exe 将准备执行的 .java 文件进行编译。方法是:

javac *.java

*.java 的 * 号代表文件名。编译成功后,再用 java.exe 执行。

2、如果仍然提示:“错误: 找不到或无法加载主类”,则检查环境变量是否配置正确。在环境变量中添加 classpath 变量,值设定为如下三个目录:

.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar

.代表当前目录。
如果未配置 JAVA_HOME 环境变量(最好放在系统变量中),应在修改 classpath 变量之前先将 JAVA_HOME 设置为 JDK 的安装目录。例如:

D:\Program Files\Java\jdk

如果不添加 JAVA_HOME 变量,开发平台可能会报错。不过,也可以不添加 classpath 变量,而是在用 java.exe 运行指定的 java 文件时在文件名(注意:大小写在这里不要写错)后传入 -classpath 参数:

-classpath .;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar

亦可显式传参,例如:

-classpath .;D:\Program Files\Java\jdk\lib\tools.jar;D:\Program Files\Java\jdk\lib\dt.jar

.java 文件就可以正常运行了。