En essayant de charger l'image à l'aide de ImageIO.lire(de la classe.getResource(URL)) mais getResource retourne null

Que j'ai été faire un jeu en 2D avec mon copain et j'ai appris beaucoup de choses sur certains jeu de base dev concepts par le biais de certains de Youtube des tutoriels. Une des choses que j'apprenais est des sprites (pour ceux qui ne connaissent pas, des images 2D en images de rendu à l'écran) et comment les utiliser dans mon jeu. J'ai été en utilisant ImageIO.read(this.class.getResource(pathToMySprite)) mais il semble que getResource() est de retour null pour une raison quelconque.

J'ai été vissage avec le chemin de un peu, en ajoutant "/" en face d'elle, la suppression de "/", plaçant l'utilisateur.dir de la propriété pour voir si elle a besoin de l'ensemble de la voie, et je suis toujours la même erreur.

TILE_TEXTURES(System.getProperty("user.dir") + "/textures/tile.png");
//ENTITY_TEXTURES("/textures/entity.png");
private BufferedImage img;

private SpriteSheet(String path) {

System.out.println(System.getProperty("user.dir"));
try {
   //TODO: Fix this error, don't know what's wrong.
     img = ImageIO.read(SpriteSheet.class.getResource(path)); //error here!!!
    } catch (IOException e) {
      e.printStackTrace();
    }
 }

public BufferedImage getImage() {
        return img;
}

Toute aide est appréciée.
Je n'ai pas été en commentant le code (j'ai l'habitude de le faire quand j'arrive à l'endroit où je peux m'asseoir en arrière et être heureux avec ce que j'ai fini), mais c'est une jolie petite classe donc je pense que vous les gars seront en mesure de comprendre ce qu'il se passe très bien.

Le dossier qui contient l'image EST dans le chemin de classe de mon projet.
J'ai aussi inclus le message d'erreur:

Exception in thread "Thread-2" java.lang.ExceptionInInitializerError
    at com.brickbattle.client.src.gui.Sprite.<clinit>(Sprite.java:7)
    at com.brickbattle.client.src.objs.Tile.<init>(Tile.java:67)
    at com.brickbattle.client.src.objs.Player.initPlayerNum(Player.java:19)
    at com.brickbattle.client.src.util.BrickBattle.init(BrickBattle.java:114)
    at com.brickbattle.client.src.util.BrickBattle.run(BrickBattle.java:85)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalArgumentException: input == null! //HERE IS ERROR
    at javax.imageio.ImageIO.read(Unknown Source)
    at com.brickbattle.client.src.gui.SpriteSheet.<init>(SpriteSheet.java:17)
at com.brickbattle.client.src.gui.SpriteSheet.<clinit>(SpriteSheet.java:8)

Merci encore!

Ce post peut aider: stackoverflow.com/questions/6608795/...
Au lieu d'utiliser this.class.getResource() essayer getClass().getResource()

OriginalL'auteur user2466959 | 2013-06-08