팩맨 레벨 배경을 표시하는 코드를 실행하는 동안 이미지 및 팩맨 스프라이트가로드되지 않는 문제가 발생합니다.Java ImageIO 예외
는예외 :
Exception in thread "Thread-2" java.lang.IllegalArgumentException: input == null!
at javax.imageio.ImageIO.read(ImageIO.java:1388)
at org.pacman.Pacman.init(Pacman.java:51)
at org.game.engine.GameLoop.run(GameLoop.java:26)
라인 GameLoop 26은 단순히 game.init();
입니다.
public class Pacman extends Game {
public static void main(String[] args) {
GameApplication.start(new Pacman());
}
private BufferedImage sheet;
private int frame;
public Pacman() {
title = "Pacman";
width = 176;
height = 258;
frame = 0;
}
@Override
public void draw(Graphics g) {
if (sheet != null) {
g.drawImage(sheet, -2, 0, null);
//draw ms pacman
g.drawImage(sheet.getSubimage(628+(frame/3)*(15+2), 33, 15, 15), 80, 105, null);
}
}
@Override
public void init() {
try {
sheet = ImageIO.read(Pacman.class.getResource("/images/pacman.png"));
} catch (IOException ex) {
Logger.getLogger(Pacman.class.getName()).log(Level.SEVERE, null, ex);
}
}
@Override
public void update() {
frame++;
if (frame > 3*2) {
frame = 0;
}
}
}
'pacman.png'에 대한 경로가 맞습니까? 아니면 '/'의 앞부분을 삭제해야합니까? – RobEarl
원본 폴더에 이미지 폴더와 팩맨 폴더가 있고 이미지에 이미지가 있고 팩맨에 코드가 포함되어 있습니다 – user1766588
이미지가 예상되는 경로에 있는지 확인하기 위해 Jar를 확인 했습니까? –