java cmd 读取错误_关于java:无法在cmd中找到或加载主类错误

在Windows CMD中编译问题之后,我改变了路径,然后开始编译Java文件。

1-)我添加了环境变量:2个新的用户变量;将它们命名为路径和类路径;我将变量值添加到JDK位置,我还对系统变量执行了相同的过程。2-)我编写了一个简单的程序,它只打印hello world,并将其命名为m,这样我就能知道它是否工作。我把它保存在桌面上,然后写在Cmd CD桌面上…在同一个LOC中,我编写了JavaM.java,然后编译成功,生成它的类M.类,然后用CMD JavaM编写,不幸的是,我得到了这个错误。错误:无法找到或加载主类

*程序没有语法或逻辑错误,我只是用helloworld尝试了一下,正如我前面提到的程序,同样的问题继续。谢谢

我们能看到您正在运行的程序的代码吗(helloworld)?

公共类m公共静态void main(string[]args)system.out.println("hello world");

在不知道您使用的命令、执行时所在的目录以及类文件的位置的情况下,无法解释为什么会出现此错误以及如何避免出现此错误。

我更改了路径系统变量,这个问题会导致这个问题吗?

运行程序时设置了什么调用路径?没有默认类路径。

@ JBNizet,我使用JavaCaseNox.java,然后在桌面上编译并执行一个< CaseNox>类(我只是尝试在桌面上),然后在CMD Java[CaseNox>中写入]之后。得到错误

java采用类名作为参数。不是文件名。如果该类在默认包中,并且命名为helloworld,那么它应该是java HelloWorld。你为什么不提供我在你的问题中所要求的所有元素呢?

"JBNizet,我不使用这个网站,我是新的,我会小心:"我只是设置类名M,文件名是M.JAVA编译后生成M.class文件。

是的,是的。你还没有回答我的问题。如果你需要帮助,一定要回答他们。

@我编辑了我的问题,我只写了所有的东西。这些位置都是桌面,但位置并不重要。我的基本程序在不同的LOC中,但我不能简单地在CMD中运行Java程序,但在Eclipse中没有问题。

类的位置确实很重要。很多。

"找不到或加载主类"是什么意思的可能副本?

java在类路径中列出的目录和JAR文件中查找类(运行时环境附带的标准类除外)。

运行程序时没有传递任何类路径选项。因此,Java寻找一个定义目录和JAR文件列表的EDCOX1×1环境变量。

大概,你没有任何这样的环境可用(这是一件好事,顺便说一句)。因此,您只需将类路径作为Java的选项传递:

java -cp . M

这告诉Java类文件应该在当前目录中找到(EDOCX1,2)。由于类位于默认包中,因此它将在当前目录中查找m.class。如果M在com.mycompany包中,您将使用

java -cp . com.mycompany.M

它将从当前目录开始查找文件com/mycompany/M.class。

当然,如果您从另一个目录运行这个命令,那么您应该更改选项的值。例如:

java -cp c:\Desktop com.mycompany.M

将类放在默认包中是一种糟糕的做法。习惯将它们放在包中。

注意,命名一个类M是很糟糕的。给你的类起有意义的名字,比如Bicycle或PasswordGenerator。

非常感谢Verry,我不知道ClassPath的事。我命名它只是为了测试,因为我不知道如何在CMD中运行Java程序。我的基本Java项目在包中。晚上好。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值