2013-04-26 66 views
0

我有一個問題,我知道這裏已經問了很多,但我之前找到的所有帖子(我發現很多)並不適合我。NoClassDefFoundError當運行程序

我有一個基本的Java程序,我已經上傳到服務器。當我通過SSH登錄到服務器時,.java文件位於我的主目錄中。我在服務器上編譯它並確認生成了.class文件。

但是當我嘗試使用

java <program name> 

運行的程序它給我的錯誤。

我試過了什麼?

  • 創建具有這兩個文件的子目錄中它
  • 與包名調用程序(即Java的packagename.programname)
  • 編譯它關閉的服務器,然後在
  • 明確設置都轉移使用-cp

真的很奇怪的是,我拿了另一個程序,並且能夠編譯並運行它沒有問題,即使它本質上是相同的程序(我複製並粘貼到我的部分)。

如果需要的話,我可以在這裏包含代碼的一部分,但我需要準確地告訴需要哪些部分,因爲有很多行。

+1

大部分時間NoClassDefErrors是由於類路徑問題,似乎需要的類/ jar文件不在路徑中。 – kosa 2013-04-26 22:47:41

+0

我不認爲把'.java'文件保存在服務器上是個好主意。爲什麼不''.jar'? – Smit 2013-04-26 22:53:55

+0

當我早些時候嘗試.jar時,程序將運行,但不會正確執行部分。所以這就是爲什麼我轉移到只執行服務器上的java文件。 我不知道爲什麼所需的類文件不會在那裏。它們是在我運行javac時生成的,所以除非這樣做不正確,否則我不這麼認爲。 – monkeeman 2013-04-26 22:58:43

回答

0

當遇到類路徑問題或類/ jar文件版本不一致時,請嘗試使用JWhich

相關問題