java命令中的ClassNotFound异常

时间:2013-04-09 10:37:59

标签: java noclassdeffounderror classnotfoundexception

我有简单的Hello word程序。程序将在不在代码中声明命名空间时编译和运行,但是当我在命名空间中声明该类并编译程序时,它将成功编译,但是当程序运行时将给出错误classnotfound。我的问题是为什么java complier在代码中声明命名空间(包)时无法找到类?

请在下面找到源代码:

package org;

public class Chunk
{

   public static void main(String [] args)
   {
    System.out.println("Hello, World");
   }
} 

,命令

java org.Chunk

且错误

java.lang.NoClassDefFoundError: org/Chunk
Caused by: java.lang.ClassNotFoundException: org.Chunk
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: org.Chunk.  Program will exit.
Exception in thread "main"

1 个答案:

答案 0 :(得分:1)

您收到此错误可能是因为该类不是类路径的一部分。您可以使用-cp java选项指定类路径,以指向找到org.Chunk类的目录/ jar。