如何抛出NoClassDefFoundError

我在eclipse中构建了一个名为“com.hello”的包,我编写了一个简单的HelloWorld程序。 Eclipse自动添加“package com.hello;” 在我的程序之上。 并且HelloWorld.java被放入

F:\workspace\helloWorld\src\com\hello; 

HelloWorld.class被放入

 F:\workspace\helloWorld\bin\com\hello. 

它在Eclipse中运行良好。 但是当我进入目录“ F:\workspace\helloWorld\bin\com\hello ”并使用命令行“java HelloWorld”时,我得到了NoClassDefFoundError 。 我知道它可能与类路径有关。 但我不太确定。

你的课程在com.hello包中。 要运行它,您必须确保包的基本目录 (在您的情况下为F:\workspace\helloWorld\bin位于类路径中。

尝试像这样运行:

 java -cp F:\workspace\helloWorld\bin com.hello.HelloWorld 

您也可以转到目录F:\workspace\helloWorld\bin ,然后运行它

 java com.hello.HelloWorld 

这将起作用,因为Java将使用当前目录作为默认值(如果您没有设置CLASSPATH环境变量)。

转到F:\ workspace \ helloWorld \ bin \并以这种方式运行它:

 java -cp .; com.hello.HelloWorld