新Java开发人员遇到的一个常见问题是,他们的程序无法运行,并显示错误消息:无法找到或加载主类。。。
这意味着什么,是什么导致的,你应该如何解决?
新Java开发人员遇到的一个常见问题是,他们的程序无法运行,并显示错误消息:无法找到或加载主类。。。
这意味着什么,是什么导致的,你应该如何解决?
当前回答
如果是Maven项目:
转到POM文件。删除所有依赖项。保存POM文件。再次只导入必要的依赖项。保存POM文件。
这个问题应该消失。
其他回答
在我的例子中,出现错误是因为我提供了源文件名而不是类名。
我们需要向解释器提供包含main方法的类名。
如果您的包名为javatpoint,包名为com.javatpoint,类名为AnotherOne,那么编译您的类,如下所示:
cd C:\Users\JAY GURUDEV\eclipse-workspace\javatpoint\src\com\javatpoint
javac AnotherOne.java
并使用
cd C:\Users\JAY GURUDEV\eclipse-workspace\javatpoint\src
java com.javatpoint.AnotherOne
(此处应排除包名称。)
根据错误消息(“找不到或加载主类”),有两类问题:
找不到Main类无法加载Main类(在接受的答案中未充分讨论此情况)
当完全限定类名中存在拼写错误或语法错误,或者提供的类路径中不存在Main类时,找不到Main类。
当无法启动类时,无法加载Main类。通常,主类扩展另一个类,而该类不存在于提供的类路径中。
例如:
public class YourMain extends org.apache.camel.spring.Main
如果不包括骆驼弹簧,将报告此错误。
似乎当我遇到这个问题时,它是独一无二的。
一旦我删除了文件顶部的包声明,它就完美地工作了。
除此之外,似乎没有任何方法在我的机器上运行简单的HelloWorld.java,无论编译发生在哪个文件夹,CLASSPATH或PATH,参数或调用的文件夹。
修复它的最简单方法是在这里重新下载Maven Apache:https://maven.apache.org/download.cgi
然后再次设置路径:
系统变量
将您设置Apache Maven文件夹的路径设置为:C:\Program Files\Apache-Maven-3.8.4\bin
重新启动终端或IDE,它应该可以工作。
它总是对我有用。