1. 問題定位
編譯(javac)和執行(java)java 程序時,出現這種類型的錯誤:找不到或無法加載主類:
- 首先排除是否是環境變量配置不當造成的問題,只要保證,命令行界面能夠識別 javac/java 命令,就說明環境變量配置沒有問題。
出現這種問題,往往是因為,java 源文件中帶有包名,如文件 C:\code\Hello.java:
package com.example; public class Hello{ public static void main(String[]args){ System.out.println("Hello"); } }
看上去似乎沒什么問題,執行:
C:\code>javac Hello.java C:\code>java Hello 錯誤: 找不到或無法加載主類 Hello
2. 解決方案
- 源文件中刪除包名(不提倡);
在 code 下創建與包名相同的文件路徑結構(C:\code\com\example\Hello.java)
編譯:C:\code>javac com/example/Hello.java 運行:C:\code>java com.example.Hello