错误的名称NoClassDefFoundError

时间:2013-10-09 17:36:22

标签: java package classpath

我有一个目录/mydir,包p /mydir/p和课程cl /mydir/p/cl.class

我不希望cd进入包目录。 我怎么能从包目录外面执行我的类,比如目录/my/otherdir/here,如果可能的话?

/my/otherdir/here>java -cp /mydir/p p.cl

收到java.lang.NoClassDefFoundError: p/cl错误。

显然java -cp /mydir/p cl会引发wrong name:p/cl错误。

1 个答案:

答案 0 :(得分:2)

包目录p不需要在类路径上。这是它的父目录/mydir。虽然提供了类名称(p.cl),但仍需要包含该包。

java -cp /mydir p.cl