运行java helloworld

PBD*_*017 1 java

我试着谷歌这个,去了oracle.com并阅读了与此相关的论坛上的所有问题.我写了一个简单的"Helloworld"程序

package helloworld;

public class Helloworld {
    public static void main(String[] args) {

        System.out.println("Hello World!");
    }
}
Run Code Online (Sandbox Code Playgroud)

NetBeans将源代码编译为.class文件.我将该文件移动到C:\MyJava

我试图通过它C:\MyJava> java -cp . Helloworld和所有可能的变化来运行它.我一直在接受NoClassDefFoundError: Helloworld (wrong name: helloworld/Helloworld).

确保;确定.有一个问题几乎与此完全相同("错误名称"的差异).该问题的解决方案在我的案例中不起作用.

Jes*_*per 7

您收到"错误的名称"错误,因为您的类在包中helloworld.Java希望您在命令行上提供完全限定的类名:

C:\MyJava> java -cp . helloworld.Helloworld
Run Code Online (Sandbox Code Playgroud)

目录结构必须与包结构匹配.这意味着您应该有一个C:\MyJava\helloworld包含类文件的目录Helloworld.class.


Jon*_*Lin 6

你需要告诉它包名(是helloworld):

C:\MyJava> java -cp . helloworld.Helloworld 
Run Code Online (Sandbox Code Playgroud)