Comment comprend toutes les images dans le fichier jar avec eclipse
J'ai fait une application java et livré toutes les classes dans un fichier jar. Quand je lance le projet dans eclipse, mon application est en cours d'exécution avec succès. Mais quand j'essaie de lancer mon .jar
fichier, je ne reçois pas les icônes utilisées par mon application. Dans le code j'obtiens mes icônes dans le répertoire images présentes dans le dossier du projet. Comment puis-je présenter ces fichiers d'image à l'utilisateur final lors de l'utilisation d'un pot?
Je suis le chargement de l'image comme ceci:
final public ImageIcon iReport=new ImageIcon("images/Report.png");
J'ai aussi essayé de
final public ImageIcon iquit=new ImageIcon(getClass().getResource("images/quit.png"));
et
final public ImageIcon iquit=new ImageIcon(getClass().getResource("/images/quit.png"));
Mais cela entraîne une erreur:
Exception in thread "main" java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(Unknown Source)
Nous montrer un peu de code? Comment charger que cela fonctionne parfois, mais pas d'autres?
Vous devez examiner la façon dont vous accédez à la ressource d'image dans votre code. Assurez-vous que ses une url relative accessibles dans le fichier jar!
Vous pouvez avoir un coup d'oeil à la classe.getResourceAsStream()
Vous devez examiner la façon dont vous accédez à la ressource d'image dans votre code. Assurez-vous que ses une url relative accessibles dans le fichier jar!
Vous pouvez avoir un coup d'oeil à la classe.getResourceAsStream()
OriginalL'auteur sAaNu | 2011-06-16
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin pour obtenir à partir du chemin de classe au lieu de partir du disque local du système de fichiers.
En supposant que
images
est en fait un paquet et que ce forfait est à l'intérieur de la même BOCAL que le courant de la classe, puis faire:Ensuite, le chemin est simplement faux. Comprenez-vous quand vous avez besoin d'utiliser le slash
/
? Voulez-vous comprendre comment les chemins d'accès relatifs au travail?Ok merci,je me le procurer....mais maintenant, je suis différent de problème ,tout fonctionne très bien à l'aide d'eclipse, mais ne fonctionne pas après la prise de pot....en fait le fichier jar est pas en cours d'exécution.
Où êtes-vous exactement à l'appel de cette ligne? Dans la classe à l'intérieur de la JARRE? Êtes-vous sûr que l'image est dans un package appelé
images
?Oui les images sont dans le paquet des images et des fichiers jar aussi de contenu, mais mon fichier jar n'est pas en cours d'exécution ....comment pourrait-il être?
OriginalL'auteur BalusC
Les fichiers dans les fichiers jar sont traités comme des "Ressources". vous avez besoin d'y accéder comme un chemin de classe de ressource, Fichier, les méthodes d'accès ne fonctionne pas.
Essayez ceci:
OriginalL'auteur gotomanners
Je sais que cela a été demandé il y a longtemps, mais cela pourrait aider d'autres avec le même problème, comme moi. J'étais déjà à l'aide de getClass().getResource("..."), mais la ressource n'a pas exporté .fichier jar.
J'ai résolu le problème en actualisant les "Ressources" du dossier, et chacun de ses sous-dossier.
Merci beaucoup.
OriginalL'auteur Velja
Fonctionne à 100%
Ne pas oublier le "/" à
path
pour l'image.OriginalL'auteur SorcerOK