我有一个具有以下结构的简化Java项目:
.
└── hello
├── HelloWorld.class
└── HelloWorld.java
在哪里HelloWorld.java
读
package hello;
class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
在项目目录中,如果我运行java hello.HelloWorld
该程序,则运行:
~/D/S/my-java-project> java hello.HelloWorld
Hello World!
通过https://www.baeldung.com/java-could-not-find-load-main-class阅读,我希望如果我转到该hello
目录并运行相同的命令,但将类路径指定为父目录,它将起作用;但是,我得到一个Could not find or load main class
错误:
~/D/S/my-java-project> cd hello
~/D/S/m/hello> java hello.HelloWorld -cp ..
Error: Could not find or load main class hello.HelloWorld
Caused by: java.lang.ClassNotFoundException: hello.HelloWorld
知道为什么这行不通吗?
该-cp
选项必须在类的名称之前,否则它将被视为程序的参数:
java -cp .. hello.HelloWorld
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句