如何抛出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