開心生活站

位置:首頁 > IT科技 > 

cmd命令行java,錯誤:找不到或無法加載主類怎麼辦

IT科技9.28K

可能原因一:java類中沒有main方法。必須有下面的main方法執行入口才可以: public static void main(String[] args) { } 可能原因二:說明當前的路徑不是java文件存放路徑。解決辦法: 第一步:在cmd上通過cd進入相應java類路徑。如(cd D:Rem

當我們在編譯程序時,javac編譯成功,但是用java運行class文件出現“找不到或無法加載主類” 的問題。這時該怎麼辦呢?

材料/工具

jdk

方法

在運行程序時最容易因爲大意出錯的地方就是java後面加了“.class”後綴,原因是java後tab鍵是默認給加後綴的,所以建議最先檢查下,如果加了需要把“.class”刪除

可能原因一:java類中沒有main方法。必須有下面的main方法執行入口才可以: public static void main(String[] args) { } 可能原因二:說明當前的路徑不是java文件存放路徑。解決辦法: 第一步:在cmd上通過cd進入相應java類路徑。如(cd D:Rem

cmd命令行java 錯誤:找不到或無法加載主類怎麼辦

在設置環境變量時,在classpath的最前面要加一個本目錄路徑,用”.“表示,由於後面還有java的dt和tools兩個路徑,所以”.“要加”;“進行分隔表示

JAVA_HOME=C:Program FilesJavajdk1.8.0_40 PATH=%JAVA_HOME%bin; CLASSPATH=.;%JAVA_HOME%libdt.jar;%JAVA_HOME%libtools.jar; -------------------------------- 其中:PATH屬於追加內容,添加到原先內容的最前面,分號隔開。 其他的

cmd命令行java 錯誤:找不到或無法加載主類怎麼辦 第2張

在cmd下運行javac 和java的時候,必須在該java文件的目錄下運行,這樣生成的class也在該目錄下,java的時候也會第一個就在本目錄下找class文件,就不會提示找不到了。這個cmd運行路徑由於一般不太注意,輸入cmd就會直接到c:個人文件夾下,而一般的java文件會用其它軟件編寫,放在選定的路徑下,這兩個路徑很少能主動重合,一運行當然找不到了,但是javac能認到,不知爲什麼java就提示找不到?這點有點奇怪。網上各種解決方法裏很少注意到其實就是這個小問題造成的找不到類,都想當然的以爲是在java源文件路徑下運行java,那當然就找不到基本問題所在了

HOME是 D:Javajdk1.8.0_11 Path是 %JAVA_HOME%bin;%JAVA_HOME%jrebin CLASSPATH是 .;%JAVA_HOME%lib;%JAVA_HOME%libtools.jar 環境變量這樣配置,home裏面的改成你自己的jdk安裝目錄,下面2個不用改,因爲下面的兩個是根據home裏面的來配置的

cmd命令行java 錯誤:找不到或無法加載主類怎麼辦 第3張

完成上面的步驟後,最後就可以成功的生成class文件了

請執行echo %path%;echo %classpath%,把結果截個圖看看

cmd命令行java 錯誤:找不到或無法加載主類怎麼辦 第4張

擴展閱讀,以下內容您可能還感興趣。

java運行顯示“找不到或無法加載主類”怎麼回事?

第一,這個程序是沒e79fa5e98193e78988e69d8331333365636563有錯。

第二,你的類名是“Test”,但是你的java文件名就應該是“Test.java”。

第三,在運行裏輸入cmd敲回車建進入一個控制檯的命令框,請輸入javac回車查看java有沒有

安裝好,如有問題有兩種肯能:一是根本就沒有安裝java程序或者安裝時沒有正確安好,

二是環境變量沒有配好。

第四,環境變量配置,變量名Path的值應該是:D:\Program Files\Java\jdk1.7.0\bin

把這個路徑放最好放到最前面用;號與其它隔開

變量名CLASSPATH的值是 .; 就這樣就可以(當然如果你要用到其它jar包就要配置)

變量名JAVA_HOME的值是 D:\Program Files\Java\jdk1.7.0

第五,編譯和運行程序,如果你的Test.java放在D盤根目錄下,在運行裏輸入cmd敲回車建進

入一個控制檯的命令窗口,敲“D:”回車,輸入javac Test.java 回車,再輸入java Test 回車。就這樣搞定。

最後,我上次碰到一位朋友和你遇到同樣的問題,jdk版本和你用的一樣,但是我沒有用過1.7版本

後來是他加了我的QQ通過遠程連接我幫他弄好了,我發現他有這麼幾個問題:1.存放java的文件夾名有中文(用中文也可以,不過個人認爲最好還是用英文命名文件夾名稱)。2.他的path變量配置有多個java的路徑,而且沒有提前。也就是說:path:D:\Program Files\Java\jdk1.7.0\bin;這項放在最前面。3.因爲1.7的版本我沒有用過所以我叫他換成了1.6的版本(如果你需要我可以發給你)

希望對你有幫助!

JAVA 錯誤: 找不到或無法加載主類

編譯好的class文件在 c:\users\Python\DeakTop下邊,當時你抄的dos根目知錄在c:\users\Python,所以程序找不到你的class文件,你先執行 cd DeakTop 回車道,在運行java HelloWorld

用cmd可以編譯java源程序,但是運行時卻提示錯誤:找不到或無法加載主類,這是什原因啊?

JAVA_HOME=C:\Program Files\Java\jdk1.8.0_40

PATH=%JAVA_HOME%\bin;

CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

--------------------------------

其中:PATH屬於追加內容專,添加到原先內容的最前面,分號隔屬開。

其他的都是新建內容。

java裏可以運行,爲什麼cmd裏不能?是不是命令出錯了?還是?? 顯示:“錯誤:找不到或無法加載主類。”

Java裏可以運行,但是到了cmd裏面還是需要javac hello.java

下一步纔是java hello

試試看更多追問追答追問這個試過,沒有用。。。而且那個先 javac Hello.java ,不就是爲了生成 .class文件嗎?追答那你先dir看看當前目錄有沒有hello.class這個文件追問有的追答是不是你這個cmd裏面的java版本和你的編輯器裏面的java版本不對啊,其實你在編輯器裏面通過就已經可以說明編程是正確的了,不要介意追問還有這樣的操作?? 雖然我是裝過兩邊(當時是Java裏也出現這樣的問題,沒法運行,才全刪了重裝,裝原來那個還是不行我才換了版本),但是原來那個我已經刪了啊,我好像記得第二次裝好jdk,沒有配置就可以用。但是這樣不是應該Java裏也不能運行的嗎?。。那個我就是想試試在cmd裏運行一下看看怎麼操作的哈。。。。剛剛我解決了,謝謝你哈

java在CMD中出現“找不到或無法加載主類”

class前面加一個public

另外知你這個截圖不完全不知道輸入的對不對

參考示例:

public class Hello {

    public static void main(String[] args) {

        System.out.println("Hello World!道");

    }

}

運行效果: