Windows11下JDK8编译后无法找到主类Hello问题求助
解决"Could not find or load main class Hello"问题
核心原因
你的Hello类位于pack.hello包下,Java虚拟机需要通过完整包名+类名定位主类,直接在类文件所在目录执行java Hello会忽略包结构,导致类查找失败。
操作步骤
切换到包结构根目录
当前目录是C:\Projects\Hello\src\main\java\pack\hello,需要退到pack目录的上级(即包结构的根目录C:\Projects\Hello\src\main\java):cd ..\..\..用完整包名执行主类
执行命令时带上完整包路径:java pack.hello.Hello
额外修正建议
- 确认
Hello.java顶部有package pack.hello;声明,必须和目录结构严格对应 - 修正CLASSPATH:你当前把CLASSPATH设为JDK的
bin目录,这是错误的。正确设置应为包含当前目录(可设为.),或者执行java命令时用-cp参数临时指定类路径,比如在类所在目录执行:java -cp ..\..\.. pack.hello.Hello
内容的提问来源于stack exchange,提问作者Bartek Czerwiński
相关产品推荐
相关产品推荐

