Il ne faut pas utiliser la même méthode pour charger des fichiers inclus dans une archive java et des fichiers externes.
Pour les fichiers externes : java.io.File, et là un chemin relatif se calcul à partir de l'emplacement d'exécution. Si les images sont dans ton jar, il n'existe que le JAR sur le système de fichier....
Pour les fichiers (ou ressources) internes : la méthode getResourceAsStream.
InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream("image/monImage.png");
Partager