如何抛出NoClassDefFoundError

时间:2012-10-16 07:41:59

标签: java eclipse classpath 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。我知道它可能与类路径有关。但我不太确定。

2 个答案:

答案 0 :(得分:4)

您的课程在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环境变量)。

答案 1 :(得分:0)

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

java -cp .; com.hello.HelloWorld