今天 在 run 一個 project 的時候,沒啟動成功,報了 “錯誤: 找不到或無法加載主類” 的提示
一般 跑個project ,編譯沒問題的話,都會輸出運行的一些信息,但這次只是報了這樣一行錯誤 “錯誤: 找不到或無法加載主類” ,應該是編譯出現了問題
不過前幾天都還能運行得好好,今天出現了這么奇怪的問題,而且在 IDE 里面沒看到有哪個地方提示出錯,一時找不到頭緒
就上網搜了一下,有列舉了一些報同樣錯誤信息的原因:
1、Java環境配置問題
在 CLASSPATH 中添加 . (英文句號),讓 java 查找當前目錄。
2. package 問題,或者命令行編譯運行的路徑不對
如果類上加了 package,就需要建立對應 package 的目錄。
在Java文件所在的相對應的路徑,進行編譯運行
3. 命令使用問題
第一步需要使用 javac ***.java ,將代碼編譯成字節碼文件。成功編譯后會生成 ***.class 文件。
第二步使用 java *** 運行,*** 后面不要跟 .java 或者 .class。這里的 *** 是 main 函數所在的類名。
但第1點到第3點,基本都是新手才會犯的錯誤,和我的情況不符合
突然靈光一閃,我這個project是個maven項目,可以命令行手動編譯看看,命令行提示的信息會多點
想着,就運行 mvn compile , 果然看到具體編譯出錯的地方,原來是其中一個類import那部分出現了問題
(import 的是JDK版本中一個內部API,在IDE里面能夠識別,沒有報錯,但由於幾乎處於廢棄狀態,所以實際編譯時不通過,不然前些天為什么可以暫時還沒想到原因,有可能是這幾天改了一些東西)
總結
原因: 有可能是找不到文件,不過多半是項目編譯出現了問題
解決方法: 使用命令行運行 mvn compile ,根據報錯信息,找到出錯的地方
共同學習,共同進步,若有補充,歡迎指出,謝謝!
