-2
當我嘗試運行我的代碼時,Eclipse抱怨我的代碼沒有主要方法。我剛剛在Github上覆制了一個.zip文件的一個編碼類。有人能告訴我問題是什麼嗎?我問過我的老師,但他的答案太長了。這是我的代碼(這是有點長,因爲我不知道什麼不包括:) :):Eclipse不運行我的代碼
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
}
}
感謝, Svadrut
包含一個'靜態無效的主要(字串[] args )'作爲applitcation的起點。參見[Java Trail](https://docs.oracle.com/javase/tutorial/getStarted/application/index.html)。 –
我在Java課程中學到的第一件事就是要讓java代碼運行的最基本的東西就是現有的主要功能。 – Medi1Saif
現在告訴我們,是Eclipse錯了嗎?你在代碼中看到'main'方法嗎?我不知道你的Java技能,但從沒有Java基礎知識的Swing開始沒有任何意義 - 很抱歉地說。 – AKSW