Java cmd上出现DEMO错误时,无法找到或加载主类

Java cmd上出现DEMO错误时,无法找到或加载主类,java,Java,我正在尝试运行使用cmd在记事本中编写的代码,但是当我编译此程序时,它会成功编译并创建一个WhileDemo.class文件,但当我使用命令执行此命令时:java WhileDemo 我得到以下错误 错误:无法找到或加载主类WhileDemoI想要 使用命令:java WhileDemo 我该怎么做 class WhileDemo { public static void main(String[] args){ int count = 1; while

我正在尝试运行使用cmd在记事本中编写的代码,但是当我编译此程序时,它会成功编译并创建一个
WhileDemo.class
文件,但当我使用命令执行此命令时:
java WhileDemo

我得到以下错误

错误:无法找到或加载主类
WhileDemo
I想要 使用命令:
java WhileDemo

我该怎么做

class WhileDemo {

    public static void main(String[] args){
        int count = 1;
        while (count < 11) {
            System.out.println("Count is: " + count);
            count++;
        }
    }
}
class WhileDemo{
公共静态void main(字符串[]args){
整数计数=1;
而(计数<11){
System.out.println(“计数为:“+Count”);
计数++;
}
}
}

您需要设置类路径并告诉java类在哪里。点(.)表示查找当前目录。

首先,
classpath
系统变量告诉java在何处查找要运行的程序,这意味着如果您在控制台中写入
java,而将emo
写入控制台,java将查找
classpath
(它可以包含用
分隔的多个目录,包括绝对路径和相对路径)如果它包含
WhileDemo.class
文件,如果是,它将运行您的程序

现在,如果
classpath
变量中没有
(当前目录),就不能指望java在执行
java WhileDemo
命令时找到
WhileDemo
程序

解决方案

  • 正如@user93353所说,您可以通过在控制台中编写
    set classpath=。
    来替换类路径的内容,但这种更改只会在控制台打开时持续
  • 您可以使用
    -cp
    选项向类路径添加一些目录
  • 您可以永久更改系统
    classpath
    变量的内容(我相信您可以通过谷歌搜索如何更改),但在windows中,这些更改将在打开新的控制台窗口后生效

  • 很抱歉回答了这么长时间,我很无聊,没有别的事可做。

    你确定你正在存储
    WhileDemo.class
    文件的目录中执行
    java WhileDemo
    吗?你是否在默认包中创建了该类,是否使用了
    package;
    也许?@NicolasCarlo:是的,我确定我在正确的目录中。But not working命令:java WhileDemo用于执行。如果需要简单的一行代码,您还可以编写
    java-cp.WhileDemo
    。@kajacx yes命令:java-cp.WhileDemo工作,但为什么java WhileDemo不工作?
    set classpath=.
    java WhileDemo