关于解决 错误: 找不到或无法加载主类 原因: java.lang.ClassNotFoundException 的方法

前言

最近跟b站学java基础,前期是一直用EditPlus和cmd去进行编码、编译和运行,然后遇到如题报错,这里收集了多篇文章的解决方法,做了一份合集,基本都能解决。如有缺漏,欢迎评论区补充~~~

报错

关于解决 错误: 找不到或无法加载主类 原因: java.lang.ClassNotFoundException 的方法_第1张图片

解决方案:

1.在cmd输入java、 javac和java -version命令是否正常执行

这决定了你是否已经安装好JDK以及配好环境变量,如果正常如下图

输入"java"

关于解决 错误: 找不到或无法加载主类 原因: java.lang.ClassNotFoundException 的方法_第2张图片

输入"javac"

关于解决 错误: 找不到或无法加载主类 原因: java.lang.ClassNotFoundException 的方法_第3张图片

输入"java -version"

关于解决 错误: 找不到或无法加载主类 原因: java.lang.ClassNotFoundException 的方法_第4张图片

2.检查环境变量是否配置了classpath

//能够执行java 和 javac 就证明你的环境变量已经配置好了,其实 classpath 可以不配置

当Java的版本高于10的时候不需要配置CLASSPATH 环境变量,只需要配置JAVA_HOME和PATH即可。

笔者就是这里报错(是因为之前不懂原理,胡乱配置了一波)

3.编译、运行的Dos命令细节

//假如有如下文件:H:\code\Hello.java

public class Hello{
     
    public static voidmain(String[]args){
     
    	System.out.println("Hello");
    }
}

//正确编译命令: javac Hello.java

//正确运行命令: java Hello

错误1:H:\code>java Hello.java

错误: 找不到或无法加载主类 Hello.java

原因:命令错误

错误2:H:\code>java Hello.class

错误: 找不到或无法加载主类 Hello.class

原因:命令错误

错误3:java 源文件带有包名,往往容易出错

如:H:\code\Hello2.java

package com.example;
public class Hello2{
     
    public static voidmain(String[]args){
     
    	System.out.println("Hello2");
    }
}

这代码看上去没什么问题,执行:

H:\code>javac Hello2.java

H:\code>java Hello2

错误: 找不到或无法加载主类 Hello2

解决办法:

+.删除包名 或者

+.在code 下创建一个与包名相同的文件结构(H:\code\com\example\Hello2.java)

编译:H:\code>javac com/example/Hello2.java

运行:H:\code>java com.example.Hello2

到这里基本就是能够找到原因,成功编译运行的了,如果还是不行,欢迎评论区留言~~

你可能感兴趣的:(疑难杂症,Java,java,exception,class,dos)