以前在用eclipse的时候经常遇到"找不到或无法加载主类"这样的问题,遇到了就很头疼,总是误打误撞的搞好了.但不知道问题的根源在哪,于是问题再次出现的时候又不知道从何下手.今天无聊,打算彻底研究下问题是如何出现的.
其实eclipse的java编译器是根据原java文件是否更新而编译java文件的.也就是说原java文件如果没有更新那么就运行上一次已经编译好的class文件.
我们做个小实验:
进入项目文件夹下删除已经编译好的class文件
再次运行程序
错误出现了"找不到或无法加载主类"
此时是因为原Java文件并没有修改,因此eclipse并不会重新编译java文件,而是去运行原有的class文件,但是我们已经将原来的class文件删除了,所以出现错误"找不到或无法加载主类";
我们可以重新修改java原文件,重新运行,看下程序是否能正常编译运行
但是总不能每次都修改java原文件吧?肯定是有更好的办法的
我们再次将编译好的class文件删除
点击project>Clean
重新构建项目,就OK了
再次运行java文件
完美解决!