我有一个目录 /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
会抛出错误的名称:p/cl
错误。
最佳答案
包目录p
不需要位于类路径上。这是它的父目录 /mydir
的作用。不过,在提供类名(如 p.cl
)时需要包含该包。
java -cp /mydir p.cl
关于java - 名称错误 NoClassDefFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19278935/