今天 在 run 一个 project 的时候,没启动成功,报了 “错误: 找不到或无法加载主类” 的提示
一般 跑个project ,编译没问题的话,都会输出运行的一些信息,但这次只是报了这样一行错误 “错误: 找不到或无法加载主类” ,应该是编译出现了问题
不过前几天都还能运行得好好,今天出现了这么奇怪的问题,而且在 IDE 里面没看到有哪个地方提示出错,一时找不到头绪
就上网搜了一下,有列举了一些报同样错误信息的原因:
1、Java环境配置问题
在 CLASSPATH 中添加 . (英文句号),让 java 查找当前目录。
2. package 问题,或者命令行编译运行的路径不对
如果类上加了 package,就需要建立对应 package 的目录。
在Java文件所在的相对应的路径,进行编译运行
3. 命令使用问题
第一步需要使用 javac ***.java ,将代码编译成字节码文件。成功编译后会生成 ***.class 文件。
第二步使用 java *** 运行,*** 后面不要跟 .java 或者 .class。这里的 *** 是 main 函数所在的类名。
但第1点到第3点,基本都是新手才会犯的错误,和我的情况不符合
突然灵光一闪,我这个project是个maven项目,可以命令行手动编译看看,命令行提示的信息会多点
想着,就运行 mvn compile , 果然看到具体编译出错的地方,原来是其中一个类import那部分出现了问题
(import 的是JDK版本中一个内部API,在IDE里面能够识别,没有报错,但由于几乎处于废弃状态,所以实际编译时不通过,不然前些天为什么可以暂时还没想到原因,有可能是这几天改了一些东西)
总结
原因: 有可能是找不到文件,不过多半是项目编译出现了问题
解决方法: 使用命令行运行 mvn compile ,根据报错信息,找到出错的地方
共同学习,共同进步,若有补充,欢迎指出,谢谢!