2010-03-10 88 views
8

我有一个非常简单的代码:为什么找不到主类?

package mygame; 
public class RunGame { 
    public static void main(String[] args) { 
     System.out.println(args[0]); 
    } 
} 

我可以编译代码,但我不能运行它。当我在命令行中输入 “java的RunGame” 我得到:

Exception in thread "main" java.lang.NoClassDefFoundError: RunGame (wrong name: mygame/RunGame).
....
Could not find the main class: RunGame. Program will exit.

+0

什么命令行? – mikek 2010-03-10 12:23:22

+0

我试图用“java RunGame”运行程序,这是错误的。我需要使用“java mygame.RunGame”。 – Roman 2010-03-10 12:29:59

回答

8
java mygame.RunGame 

是Java可执行文件的语法。即java classname.qualified.with.full.packaging

此外,您显示的输出中的RunColoredTrails类是什么?

+0

这是一个错误。它应该是“RunGame” – Roman 2010-03-10 12:26:12

+0

你是否在命令行尝试它? – GuruKulki 2010-03-10 12:27:57

+0

并感谢您的答案。现在它可以工作。 – Roman 2010-03-10 12:28:53

7

你可能会尝试
C:\your-java-directory-\mydir\> java RunGame对不对?

记得RunGame位于名为mydir的包内。 所以走一步早在乌拉圭回合执行路径..

c:\your-java-directory\>

现在编译和您使用的运行你的类执行这样

c:\your-java-directory\> javac mydir\RunGame.java
c:\your-java-directory\> java mydir.RunGame