2013-05-12 178 views
-2

當我試圖執行一個編譯Java文件,我得到這個錯誤:編譯器錯誤:Java的

Could not find or load main class XYZ

類在bin文件夾中存在。

<pre> 
C:\Windows\system32>cd C:\Java\bin 
C:\Java\bin>javac PhraseOmatic.java 
C:\Java\bin>java PhraseOmatic 
Error: Could not find or load main class PhraseOmatic 
C:\Java\bin>echo %CLASSPATH% 
C:\Java\lib 
C:\java\bin>javac PhraseOmatic.java 
C:\Java\bin>java PhraseOmatic 
Error: Could not find or load main class PhraseOmatic 
</pre> 

enter image description here

+1

你使用java文件中的任何包嗎? – 2013-05-12 19:23:22

+4

你不應該設置'CLASSPATH',你特別不應該把它設置在你擁有的位置 - 儘管其他人可能告訴你!如果您未設置環境變量,則當前目錄將成爲默認值,並且您的會話將按預期工作。但是爲了上帝的緣故,''不要''在C:\ Java \ bin'裏面工作!在你的代碼的其他地方創建一個目錄,並在'PATH'上放置'C:\ Java \ bin'。 – 2013-05-12 19:24:00

+0

nope no packages .. – bluedroid 2013-05-12 19:25:16

回答

1

根據你的輸出,你的CLASSPATH設置爲C:\Java\lib,而你在C:\Java\bin編譯你的類!

請注意,編譯器的輸出將轉到類路徑上的當前目錄(或由-d指定的目錄)和而不是

-1

如果沒有在環境變量Java中,你應該這樣做。

現在,你可以運行 「C:\ Java的\ BIN \ javac的PhraseOmatic.java」 當你在你的java文件,在命令的目錄提示

C:\ MyFolder文件> C:\ Java \ bin \ javac PhraseOmatic.java

+2

雖然這個建議很好,但它並沒有解決他的問題,這是假的CLASSPATH設置。 – 2013-05-12 19:31:51

+0

這並非原始的,未經編輯的文章。爲什麼我低估了這個? – 2013-05-12 21:32:53