前言
最近跟b站学java基础,前期是一直用EditPlus和cmd去进行编码、编译和运行,然后遇到如题报错,这里收集了多篇文章的解决方法,做了一份合集,基本都能解决。如有缺漏,欢迎评论区补充~~~
报错
解决方案:
1.在cmd输入java、 javac和java -version命令是否正常执行
这决定了你是否已经安装好JDK以及配好环境变量,如果正常如下图
输入"java"
输入"javac"
输入"java -version"
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
到这里基本就是能够找到原因,成功编译运行的了,如果还是不行,欢迎评论区留言~~