1. 程式人生 > >用cmd命令列編譯JAVA程式時出現“找不到或無法載入主類”

用cmd命令列編譯JAVA程式時出現“找不到或無法載入主類”

檢查環境變數配置:

JAVA_HOME:D:\Java\jdk1.8.0_91

CLASSPATH:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(前面有英文點號)

Path:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

設定沒問題。java -version測試,顯示JDK版本正常;

我很確定自己的JDK設定沒問題,在Eclipse下JAVA檔案執行正常,但顯示  錯誤: 找不到或無法載入主類 j2se001.HelloWorld 真的好無奈。

1.網上說要把jdk環境變數設定到使用者變數,而不是使用者變數;設定後無效,都重啟過電腦,沒毛用;

主要觀點就是:JDK編譯正常,那麼JAVA_HOME配置正確。如果這樣的話,那你的HelloWorld類的放的實際位置,package設定的和類路徑的設定不匹配,執行器找不到類檔案;說白了就是編譯後的class檔案的路徑問題。

兩種解決辦法:

1.把package語句去掉,讓編譯檔案處於當前資料夾

例如我將java檔案的package去掉,放在D盤根目錄

2.不去掉package,在java檔案同級目錄加一個package相同名稱的資料夾;

HelloWorld.java在src的j2se001資料夾下,j2se001下建一個同package名稱的資料夾

或者下面這種,與上面實質是一樣的,只是在哪個目錄執行java類檔案(還是在java類檔案同級目錄建一個同package名稱相同的資料夾);

刪package或者加package同名folder的實質:執行器指向package資料夾