Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Utiliser les Ressources (image, fichier) d'un fichier JAR

1 réponse
Avatar
Thibaut Desmarest
Bonjour à tous,

Mon problème est le suivant :

Pour le programme que je suis en train d'écrire, je souhaite qu'il soit
possible de faire une archive exécutable .jar

J'ai bien réussi à créer l'archive avec toutes les classes de tous les
packages, et elle s'éxécute bien quand on double clique dessus.
Cependant, (sinon ce serait pas drôle), j'ai des problèmes pour accéder
aux ressources (images, fichier de langue) que j'ai inclues dans le jar.

Si je met le dossier "Ressources" à côté du fichier jar, ET que ce
dossier est AUSSI inclus dans l'archive alors tout marche très bien.
Mais si j'enlève le dossier de l'archive, alors je n'ai plus accès au
fichier de langue (il n'est pas capable d'aller le chercher dans le
dossier à côté). J'ai toujours les images.
Si par contre je supprime le dossier qui est à côté du jar mais que je
laisse ce dossier "Ressources" dans le jar, alors c'est le contraire,
j'ai les langues mais pas les images !!!

J'aimerais que ca marche en ayant tout dans le jar, pouvez vous m'aider ??

Merci d'avance,


Thibaut

1 réponse

Avatar
Thomas Baruchel
On Fri, 10 Sep 2004 17:56:07 +0200, Thibaut Desmarest
wrote:
J'aimerais que ca marche en ayant tout dans le jar, pouvez vous m'aider
??
C'est assez simple. Tu dois passer par la classe ClassLoader qui

correspondra à
ton jar. Personnellement, je fais:
- en statique, si ma classe s'appelle Truc:
Truc.class.getClassLoader()
- en dynamique, pareil en remplaçant truc par this (il y a peut-être
autre chose
à changer, je n'ai plus cela en tête: peut-être
this.getClass().getClassLoader()
à vérifier)

Une fois que tu as ton ClassLoader (j'appelle en général le mien:
myClassLoader)

Tu disposes de la méthode getResource() pour accéder à un 'fichier' ; elle
te retourne
une URL. A partir de cette URL tu peux créer des ImageIcon, afficher du
HTML dans un
JTextPane, etc.

Amicalement,

--
Thomas Baruchel
To contact me, please, see at: http://cerbermail.com/?OEyHGNQFEa
Home Page: http://tbaruchel.free.fr/