2015-04-12 155 views
-3

我一直在試圖編譯Java程序,而每一次這些錯誤顯示:Java代碼未運行?

enter image description here

我使用CMD編譯和javac test.java工作正常,返回沒有錯誤,但java test是導致在錯誤的字符串中。問題是什麼?

編輯: 這裏是javac -versionjava -version的結果。

enter image description here

+0

好像,你已經正確設置你的類路徑 –

+0

請將堆棧跟蹤作爲實際文本而不是圖像。 – Maroun

+0

請發佈完整的錯誤。 –

回答

0

運行在命令行Java程序,你需要考慮以下幾點:

  1. 指定要運行的主類,即完全合格的名稱:
java com.somepackage.MainClass 
  • 將主類和任何相關的類/ jar添加到類路徑中。

  • +0

    我只是試圖運行一個簡單的'你好世界'程序,我寫在記事本中。 – AZG

    +0

    @AGZuniverse然後,最有可能的是'java -cp。 com.somepackage.MainClass'會工作。 –

    -1

    嘗試用CMD運行這些命令:

    javac -version 
    java -version 
    

    如果沒有設置其中的一個正常,你不會看到你的JDK版本,所以你必須設置合適的環境變量。

    +0

    我在問題中添加了這個截圖。請幫忙! – AZG

    +0

    @AGZuniverse你的環境變量沒問題。我認爲你的問題是你沒有使用類的完整包,即如果你的類是'package code',那麼你應該使用'java code.test'。確保你使用的是.class而不是.java。祝你好運。 –

    1

    錯名字:測試

    Test類是在一個包中定義的,但你沒有提供的命令行上的包名。

    +0

    Windows上的Java是否區分大小寫? – chrylis

    +0

    從日誌中可以清楚地看到,test.java文件內部的類名被定義爲Test not test並且Java與windows無關。一個類文件應該以大寫字母開頭,這是一個慣例,但是在你的情況下,你應該改變文件內部的類名(class test)或者將文件重命名爲Test.java並用javac編譯,然後用java cmd運行。 –