2017-10-15 1 views
-2

Wenn ich versuche, meinen Code auszuführen, beschwert sich Eclipse, dass mein Code keine Hauptmethode hat. Ich habe das von einer .zip-Datei auf Github für eine Codierungsklasse kopiert. Kann mir bitte jemand sagen, was das Problem ist? Ich habe meinen Lehrer auf Medium gefragt, aber er braucht viel zu lange, um zu antworten. Hier ist mein Code (es ist ein bisschen lang, seit ich nicht wusste, was nicht enthalten ist :):Eclipse führt meinen Code nicht aus

bb.view.arena;

import bb.model.GameModel; 
import bb.view.SpriteFactory; 

import javax.swing.JComponent; 
import java.awt.Color; 
import java.awt.Dimension; 
import java.awt.Graphics; 
import java.awt.image.BufferedImage; 

import static bb.BBConfig.*; 

/** 
* Created by willie on 6/4/17. 
*/ 

public class ArenaPane extends JComponent { 
    private GameModel gameModel; 
    private SpriteFactory spriteFactory; 

    public ArenaPane(GameModel gameModel, SpriteFactory spriteFactory) { 
     this.gameModel = gameModel; 
     this.spriteFactory = spriteFactory; 
    } 

    @Override 
    public Dimension getPreferredSize() { 
     return ARENA_PANE_SIZE_PX; 
    } 

    @Override 
    public void paint(Graphics g) { 
     g.translate(ARENA_MARGIN_LEFT_RIGHT_PX, 0); 
     doPaintBorder(g); 
     g.translate(ARENA_BORDER_SIZE_PX, ARENA_BORDER_SIZE_PX); 
     g.setClip(0, 0, ARENA_INNER_WIDTH_PX, ARENA_INNER_HEIGHT_PX); 
     paintPlayer(g); 
     g.translate(-ARENA_BORDER_SIZE_PX, -ARENA_BORDER_SIZE_PX); 
     g.translate(-ARENA_MARGIN_LEFT_RIGHT_PX, 0); 
    } 

    private void doPaintBorder(Graphics g) { 
     g.setColor(Color.YELLOW); 
     g.fillRect(0, 0, ARENA_OUTER_WIDTH_PX, ARENA_OUTER_HEIGHT_PX); 
     g.setColor(Color.BLACK); 
     g.fillRect(ARENA_BORDER_SIZE_PX, ARENA_BORDER_SIZE_PX, ARENA_INNER_WIDTH_PX, ARENA_INNER_HEIGHT_PX); 
    } 

    private void paintPlayer(Graphics g) { 

     // Note: Arena dimensions are 292 x 230. 
     // drawImage() starts from the sprite's top-left corner. 
BufferedImage lexi = spriteFactory.getLexi(); 
g.drawImage(lexi, 100, 100, 16, 16, null); 
     // Step 1. Get the sprite from the sprite factory 
     // TODO 

     // Step 2. Draw the sprite on the screen 
     // g.drawImage(image, x, y, width, height, null); 
     // TODO 
    } 
} 

Danke, Svadrut

+3

umfassen ein 'static void main (String [] args) 'als Ausgangspunkt für die Bewerbung. Siehe [Java-Trail] (https://docs.oracle.com/javase/tutorial/getStarted/application/index.html). –

+0

Das erste, was ich in meinem laufenden Kurs über Java gelernt habe, ist, dass die grundlegendste Sache für einen Java-Code eine existierende Hauptfunktion ist. – Medi1Saif

+0

Jetzt sagen Sie uns, ist Eclipse falsch? Siehst du im Code eine "Haupt" -Methode? Ich kenne deine Java-Kenntnisse nicht, aber mit Swing ohne die Java-Grundlagen anzufangen macht keinen Sinn - tut mir leid, das zu sagen. – AKSW

Antwort

0

Sie haben ein Java-Swing-Applet, das in jedem Browser ausgeführt werden kann, die die entsprechende Version von Java-Plug-in installiert ist und gibt es zwei Möglichkeiten it-

zu laufen
  1. von html-Datei Versuch:

<html> 
 
<body> 
 
<applet code="ArenaPane.class" width="300" height="300"> 
 
</applet> 
 
</body> 
 
</html> 
 

 

  1. von applet Tool (für Testzwecke) das Applet von applet Tool ausführen zu können, erstellen Sie ein Applet, das Applet-Tag in Kommentar enthält und kompilieren. Versuch:

/* 
 
<applet code="ArenaPane.class" width="300" height="300"> 
 
</applet> 
 
*/

Um das Applet von applet Tool ausführen, in Eingabeaufforderung schreiben:

> c:\>javac ArenaPane.java 

> c:\>appletviewer ArenaPane.java 
Verwandte Themen