2014-11-05 42 views
0

試圖再次學習Java,我不記得第一次如何解決這個問題。試圖編譯Java源代碼(找不到主類)

我有3個班; GameLauncher,猜猜遊戲和玩家。 GameLauncher有我的主要方法。

它們全部打包成chap02,我不記得那對我是否重要。

我編譯如下:javac的GameLauncher.java GuessGame.java Player.java

運行是這樣的:java的GameLauncher

我收到此錯誤:無法找到或加載主類GameLauncher。

我知道這是一個荒謬的問題,但我一直有這種東西的麻煩。實際的編程和編寫代碼我可以拿起很好,但處理這些該死的編譯器總是讓我。任何幫助,將不勝感激。謝謝

package chap02; 

public class GameLauncher { 
public static void main (String[] args) { 
    GuessGame game = new GuessGame(); 
    game.startGame(); 
} 
} 

編輯:這個問題不是與實際的代碼,問題是與我如何編譯它。

+1

向我們顯示代碼和錯誤 – kirti 2014-11-05 15:47:59

+0

使用NetBeans或Eclipse更容易。否則,從父目錄執行'javac'。這可能會有所幫助:http:// stackoverflow。com/questions/8027670 /編譯 - 四 - java文件 - 一個包中使用javac – vefthym 2014-11-05 15:53:05

回答

2

運行程序時,必須從正確的目錄運行它。請記住,您使用的包,讓你有以下封裝結構

  • SRC
    • chap02
      • GameLauncher.java
      • GuessGame.java
      • Player.java

編譯完成後,您會在chap02文件夾中找到相應的.class文件。開始遊戲,你已經運行即從src目錄下面的命令:

java chap02.GameLauncher 

既然你在源代碼中指定一個包,你必須使用完整的合格的名稱,包括包,其中,班屬於。

編輯爲vefthym提到的,你必須編譯代碼以同樣的方式,運行

javac chap02/GameLauncher.java 

從源目錄。

編輯2 「src」是你的src所在的目錄。例如,我的代碼unter X:\ JDK-Projects [Project-name] \ src。您必須指定src-Directory的完整絕對路徑或您當前所在目錄的相對路徑。

+0

src是否意味着我的文件夾所在的驅動器? 目前該文件夾在我的c:盤,所以我會這樣做,從命令提示符? ||| cd c:\ chap02 ||| javac chap02 * .java ||| java chap02.GameLauncher ||| ? – user2993636 2014-11-05 16:06:32

+0

如果你們所有的文件都位於C:\ chap02 \ src下,那麼你應該chdir到C:\ chap02並從那裏執行: cd C:\ chap02 && javac chap02.GameLauncher.java && java chap02.GameLauncher – Turing85 2014-11-05 17:11:51