新Java开发人员遇到的一个常见问题是,他们的程序无法运行,并显示错误消息:无法找到或加载主类。。。

这意味着什么,是什么导致的,你应该如何解决?


当前回答

首先使用此命令设置路径;

set path="paste the set path address"

然后需要加载程序。在存储的驱动器中键入“cd(文件夹名)”并编译它。例如,如果我的程序存储在D驱动器上,请键入“D:”,然后按enter键并键入“cd”(文件夹名称)。

其他回答

当相同的代码在一台电脑上运行,但在另一台电脑中显示错误时,我找到的最佳解决方案是如下编译:

javac HelloWorld.java
java -cp . HelloWorld

这就是我解决问题的方法。

我注意到,如果在编译中包含jar文件,那么将当前目录(./)添加到类路径中会有帮助。

javac -cp "abc.jar;efg.jar" MyClass.java
java -cp "abc.jar;efg.jar" MyClass

vs.

javac -cp "**./**;abc.jar;efg.jar" MyClass.java<br>
java -cp "**./**;abc.jar;efg.jar" MyClass

如果类在包中,则必须cd到项目的根目录,并使用类的完全限定名称(packageName.MainClassName)运行。

例子:

我的课程在这里:

D:\project\com\cse\

我的主类的完全限定名称是:

com.cse.Main

所以我回到根项目目录:

D:\project

然后发出java命令:

java com.cse.Main

这个答案是为了帮助新手Java程序员摆脱一个常见错误带来的挫折。我建议您阅读公认的答案,以获得有关Java类路径的更深入的知识。

这件事也发生在我身上。在我的例子中,只有在源代码中存在HttpServlet类时才会发生这种情况(IntelliJ IDEA没有给出编译时错误;servlet包导入得很好,但是在运行时出现了这个主类错误)。

我设法解决了。我进入菜单“文件”→ 项目结构…:

然后到模块:

servlet模块附近有一个提供的作用域。我将其更改为编译:

而且成功了!

解决“无法加载主类错误”

看完所有的答案后,我发现大多数答案都不适合我。所以我做了一些研究,以下是我得到的答案。只有在步骤1不起作用时才尝试此操作。

尝试安装JRE 32或64。如果它不起作用,打开并转到C:\Program Files(x86)\Java或C:\Program Files\Javai.打开jdk文件夹,然后打开bin文件夹。二。复制路径并将其添加到环境变量中。确保用分号;分隔变量;。例如,“C:\Yargato\bin;C:\java\bin;”。如果不这样做,将导致更多错误。iii.转到jre文件夹并打开其bin文件夹。iv.在这里搜索rt.jar文件。我的是:C: \程序文件(x86)\Java\jre1.8.0_73\lib\rt.jar复制并在环境变量下搜索类路径变量并将其粘贴在那里。v.现在重新启动cmd并再次尝试运行。错误将消失。vi.我将发布我的YouTube视频教程的链接。