Eclipse下好使,但是cmd下執行java運行class文件提示Exception in thread "main" java.lang.NoClassDefFoundError問題

其實遇到這個問題,我想大概不會是幾個低級錯誤照成的,網上主要說的幾點是:1.注意大小寫。2.注意別java TCPSocket.clas,別加class。3.注意路徑。

個人感覺也就是第三個需要注意,前兩個我就不說了。

關於路徑問題。注意,不用像網上說的,非要把你class的路徑配置到classpath下,只要在classpath的配置最前面加上“.;”即可。“.”代表當前目錄下即可,“;”代表間隔。

例如的我配置:

classpath:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

如果這樣還是不好使,那麼真正的問題一定是如下的:

查看你的類文件,裏面是不是在某一個包下。如果是,那就找到問題所在了。拿我的問題來說:

我的類文件是TCPServer.java,是在com.socket這個包裏面。

那一般的做法都是進入cmd中,找到該文件的目錄。比如:D:\java\eclipseworkspace\TestSocket\src\com\socket>_

大家是不是會嘗試輸入 java TCPServer 提示錯誤,然後嘗試java com/socket/TCPServer還是提示錯誤。

其實正確的做法是:

退回上一級目錄D:\java\eclipseworkspace\TestSocket\com\

然後運行java com/socket/TCPServer. OK啦!!!

這樣:D:\java\eclipseworkspace\TestSocket\src>java com/socket/TCPClient

發佈了64 篇原創文章 · 獲贊 5 · 訪問量 63萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章