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

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


当前回答

使用此命令:

java -cp . [PACKAGE.]CLASSNAME

示例:如果类名是从Hello.java创建的Hello.class,则使用以下命令:

java -cp . Hello

如果文件Hello.java位于com.demo包中,请使用以下命令

java -cp . com.demo.Hello

在JDK8中,类文件多次出现在同一文件夹中,但java命令需要类路径,因此我们添加了-cp。将当前文件夹作为类路径的参考。

其他回答

使用此命令:

java -cp . [PACKAGE.]CLASSNAME

示例:如果类名是从Hello.java创建的Hello.class,则使用以下命令:

java -cp . Hello

如果文件Hello.java位于com.demo包中,请使用以下命令

java -cp . com.demo.Hello

在JDK8中,类文件多次出现在同一文件夹中,但java命令需要类路径,因此我们添加了-cp。将当前文件夹作为类路径的参考。

在本例中,您有:

无法找到或加载主类?类路径

这是因为您使用的是“-classpath”,但破折号与java在命令提示符上使用的破折号不同。我遇到了从记事本复制和粘贴到cmd的问题。

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

看完所有的答案后,我发现大多数答案都不适合我。所以我做了一些研究,以下是我得到的答案。只有在步骤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视频教程的链接。

我上升了一级。因此,现在HelloWorld.class文件位于hello\HelloWorld.cclass中,我运行了以下命令。其中cp是类路径和。表示仅签入当前目录。

java -cp . hello.HelloWorld

输出

Hello world!

对于数据库连接,我得到了这个。我刚刚在类路径中添加了以下内容:

export CLASSPATH=<path>/db2jcc4.jar:**./**

我在这里附上了。/最后,这样我的类在加载时也会被识别。

现在只需运行:

java ConnectionExample <args>

它工作得很好。