[Résolu][Jar]Localisation de ressource

Localisation de ressource [Résolu][Jar] - Java - Programmation

Marsh Posté le 31-05-2004 à 20:11:10    

Bon, c'est un sujet qui pose souvent des problèmes aux gens qui ont pas d'expérience mais là, j'ai rien trouvé qui m'aidait.
 
Mon prog tourne bien, j'utilise un FileInputStream qui marche.
Sous eclipse, je génère un Jar. Le path est bon il me semble, sauf que le fichier s'ouvre pas.
Je me dis qu'il est pas inclut dans le Jar. Je décompile le Jar et si, il y est bien ( j'ai jamais eu de problèmes avec les jars sous eclipse)
 
En fait, le fichier est bien dans le Jar mais quand je catch l'erreur du FileInputStream, je vois qu'effectivement l'ouverture merde.
 
D'où peut venir le problème ?
 
merci.


Message édité par raytaller le 06-06-2004 à 15:13:08
Reply

Marsh Posté le 31-05-2004 à 20:11:10   

Reply

Marsh Posté le 01-06-2004 à 12:09:53    

ben on utilise pas un FILEInputStream pour lire un fichier qui est DANS UN JAR [:mlc]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 01-06-2004 à 19:41:49    

damned... et donc, si je charge un fichier dans une application (là en l'occurence c'est une map de jeu) et que hop, j'ai envie de faire un jar, je fais quoi ? je la mets dans un dossier à part ?
 
Et à ce moment là, à quoi ça sert de pouvoir mettre un fichier autre que .class dans un Jar ?
 
merci
 
//edit
 
Exemple :
 
quand c'est pas dans le jar c'est comme ça :
 


mainpackage/
           MaClass.class
           core/
                MapLoader.class
                Coucou.class
                ...
           maps/
                map1.map
                map2.map
                ...


 
donc, mon jar on est d'accord, il contient toutes les classes. et alors, les maps j'y accède comment ?


Message édité par raytaller le 01-06-2004 à 19:46:47
Reply

Marsh Posté le 01-06-2004 à 19:44:05    

class.getResourceAsStream


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 01-06-2004 à 19:49:20    

Ah.. ok, ça retounre un InputStream, c'est parfait.
 
Merci  :)

Reply

Marsh Posté le 01-06-2004 à 19:52:23    

de rien.
lis un coup la javadoc.. en gros ça charge une resource depuis le classpath.. bon a savoir si tu veux lancer ton truc sans faire de jar ;)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 01-06-2004 à 20:04:26    

yes, j'ai essayé ça marche bien en dehors du Jar.
J'ai casté direct le InputStream en FileInputStream en gardant le même ciblage et ça marche.. mais seulement en dehors du Jar
 
Quad je lance le Jar, je catch toujours la même exception. Dans le jar, le path de ma ressource doit bien être exactement le même que quand je teste l'appli nan ?

Reply

Marsh Posté le 03-06-2004 à 23:08:29    

Citation :

Quad je lance le Jar, je catch toujours la même exception. Dans le jar, le path de ma ressource doit bien être exactement le même que quand je teste l'appli nan ?


 
hop  :hello:

Reply

Marsh Posté le 03-06-2004 à 23:35:59    

raytaller a écrit :

yes, j'ai essayé ça marche bien en dehors du Jar.
J'ai casté direct le InputStream en FileInputStream en gardant le même ciblage et ça marche.. mais seulement en dehors du Jar


 [:wam]  
 
hein ????
 
tu castes ce que te retourne class.getResourceAsStream en FileInputStream ??  [:mlc2]

Reply

Marsh Posté le 03-06-2004 à 23:59:04    

ouaip vu que je getResourceAsStream retourne un input stream... moi ce que je veux c'est désérialiser un objet en fait, donc nomrllement je fais ça tranquille avec des FileInputStream, mais là en Jar je sais plus quoi faire

Reply

Marsh Posté le 03-06-2004 à 23:59:04   

Reply

Marsh Posté le 04-06-2004 à 00:28:27    

houlala ...
 
c'est quoi le problème que ca te pose d'avoir un Inputstream plutot qu'un FileInputStream ? mmm ?

Reply

Marsh Posté le 04-06-2004 à 00:57:10    

:whistle:  
ouais bon d'accord... ça marche ( comment se noyer dans un verre d'eau )
 
merci alors :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed