IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Pb d'organisation d'un projet


Sujet :

Langage Java

  1. #1
    Rédactrice

    Avatar de kalyparker
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 327
    Par défaut Pb d'organisation d'un projet
    Bonjour à tous,
    ce post fait suite à celui ci :
    http://www.developpez.net/forums/sho...d.php?t=398608
    J'ai créer une appli qui contient plusieurs packages dont 1 qui s'appele conf et qui contient 2 fichiers xml de conf (sur ce point je ne suis pas sure que j'ai bien fait de créer un package, mais comme c'est un repertoire )
    Pour acceder à ces fichiers je faisais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    String toto = new File(ClassLoader.getSystemResource("").toURI()).getAbsolutePath();
    File file = new File(toto+"\\conf\\monfichierconf.xml";
    // traitement du fichier
    Enfin bref, tout fonctionne parfaitement en mode developpement et je décide donc de déployer mon application (quelle idée franchement )
    En faisant un build avec Netbeans je constate que j'ai en sortie un .jar contenant mon package de conf et lorsque je lance mon .jar, ben mon fichier est introuvable (là je crois que c'est normal parcequ'il est dans le .jar)

    Je crois que j'ai un problème d'organisation de mon projet... Est ce que quelqu'un à déjà rencontrer ce genre de problème (fichier de conf qui ne doit pas être dans le jar)

    Pouvez vous m'éclairez ?

    Merci d'avance

    PS : je pense qu'il faut aussi que je modifie mon code pour utiliser le classpath comme me l'a conseillé adiguda dans l'autre post, mais ça sera le deuxième etape...
    It isn't that they can't see the solution, it's that they can't see the problem.
    Mes Articles et Traductions (Microstrategy, Css et Javascript)
    Si vous souhaitez contribuer à la rubrique BI, contactez-moi ou tout autre membre de l'équipe BI par MP.

  2. #2
    Membre expérimenté Avatar de welcome_59
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2007
    Messages
    203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 203
    Par défaut
    Vérifie déjà dans le .jar généré si ton fichier s'y trouve. Si oui tu dois probablement utiliser un autre chemin pour y accéder.

  3. #3
    Rédactrice

    Avatar de kalyparker
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 327
    Par défaut
    Oui, j'ai bien tout mes fichiers dans le .jar
    It isn't that they can't see the solution, it's that they can't see the problem.
    Mes Articles et Traductions (Microstrategy, Css et Javascript)
    Si vous souhaitez contribuer à la rubrique BI, contactez-moi ou tout autre membre de l'équipe BI par MP.

  4. #4
    Rédacteur
    Avatar de bulbo
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2004
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Février 2004
    Messages : 1 259
    Par défaut
    Regarde dans la FAQ java (t'as un lien dans ma signature) c'est explique dedans comment acceder a un fichier dans un jar.

    Si tu ne veux pas que ton fichier soit dans le jar alors il ne faut pas que tu le mettes dans un package ton fichier car ton IDE met toutes les resources trouvees dans des packages dans le jar.

    Il faut que tu cree un repertoire dans ton module de preference pas dans le repertoire src qui va contenir ton fichier. Netbeans ne le mettra plus dans le jar mais attention il faudra aussi trimbaler ce repertoire en plus du jar pour installer ton appli ailleurs.

    Bulbo
    [Java] [NetBeans] [CVS]
    La FAQ Java
    Merci de ne pas me poser de questions techniques par MP.

  5. #5
    Rédactrice

    Avatar de kalyparker
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 327
    Par défaut
    Regarde dans la FAQ java (t'as un lien dans ma signature) c'est explique dedans comment acceder a un fichier dans un jar.
    Merci de l'info, j'avais pas regardé dans la FAQ java (seulement dans FAQ Netbeans) mais pour configurer l'appli c'est pas très pratique : ouvrir le .jar, changer le fichier de conf, fermer le .jar
    En plus je voudrais (un jour peut être...) créer un exe qui inclus mon .jar et le jre pour avoir une appli independante (avec mes fichiers de config qui traine dans le même repertoire que le .exe)

    J'essaye depuis ce matin de dire à netbeans de ne pas inclure dans le .jar les fichiers .xml mais il sont toujours là !
    J'ai essayer de créer dans le même projet, un nouveau repertoire /Ressources dans lequel j'ai mis mes fichiers xml, mais j'ai toujours la meme chose dans mon jar, à croire que netbeans garde en memoire quelques part l'arbre du projet...

    J'ai aussi essayé d'utiliser le classpath pour définir le repertoire de configuration et là encore c'est pas gagner, j'ai plus acces à mes fichiers...
    Plus ça va et moins je comprends... je commence à desesperer...
    La prochaine étape c'est de regretter delphi et sa simplicité

    J'fais une petite pause, histoire de me changer les idées, je m'y remet plus tard...
    It isn't that they can't see the solution, it's that they can't see the problem.
    Mes Articles et Traductions (Microstrategy, Css et Javascript)
    Si vous souhaitez contribuer à la rubrique BI, contactez-moi ou tout autre membre de l'équipe BI par MP.

  6. #6
    Rédacteur
    Avatar de bulbo
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2004
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Février 2004
    Messages : 1 259
    Par défaut
    Citation Envoyé par kalyparker Voir le message
    Merci de l'info, j'avais pas regardé dans la FAQ java (seulement dans FAQ Netbeans) mais pour configurer l'appli c'est pas très pratique : ouvrir le .jar, changer le fichier de conf, fermer le .jar
    En plus je voudrais (un jour peut être...) créer un exe qui inclus mon .jar et le jre pour avoir une appli independante (avec mes fichiers de config qui traine dans le même repertoire que le .exe)

    J'essaye depuis ce matin de dire à netbeans de ne pas inclure dans le .jar les fichiers .xml mais il sont toujours là !
    J'ai essayer de créer dans le même projet, un nouveau repertoire /Ressources dans lequel j'ai mis mes fichiers xml, mais j'ai toujours la meme chose dans mon jar, à croire que netbeans garde en memoire quelques part l'arbre du projet...

    J'ai aussi essayé d'utiliser le classpath pour définir le repertoire de configuration et là encore c'est pas gagner, j'ai plus acces à mes fichiers...
    Plus ça va et moins je comprends... je commence à desesperer...
    La prochaine étape c'est de regretter delphi et sa simplicité

    J'fais une petite pause, histoire de me changer les idées, je m'y remet plus tard...
    Tu as fait un "clean and build" dans NetBeans, sans clean il est probable que tes .xml reste dans le repertoire build et soit inclus a chaque fois dans le jar lors de la generation.

    Moi ce que je fais avec mes fichiers de conf, je les mets dans le jar (en gros cela represente les valeurs par defaut) et a l'execution de l'appli si il y a besoin de modifier quelque chose, je les recopie sur le disque a une place determinee d'avance genre ../conf.

    Si le fichier dans ../conf est present c'est lui qui est utilise sinon c'est celui dans le jar.

    si tu veux un coup de main pour mettre tes fichiers de conf dans le classpath, montre nous ton code et dis nous ou sont tes fichiers sur le dique.

    Bulbo
    [Java] [NetBeans] [CVS]
    La FAQ Java
    Merci de ne pas me poser de questions techniques par MP.

  7. #7
    Rédactrice

    Avatar de kalyparker
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 327
    Par défaut
    J'avance à petit pas...
    J'ai réussi à exclure le package de mon .jar
    Sous Netbeans :
    clic droit sur le projet -> Properties
    Categories -> Packaging
    Normalement sous Netbeans 5.5.1 on a par defaut "**/*.java,**/*.form" dans "Exclude From JAR File"
    suffit d'ajouter ",**/nompackage/" (sans les "")
    C'etait pourtant simple, j'sais pas pourquoi je n'y ai pas pensé plus tot (y'a des jours comme ça)
    Maintenant, il faut que je modifie l'appel à mes fichiers en utilisant le classpath, je pense qu'en modifiant le manifest du .jar je peux arriver à quelques chose (la difficultée, viens à mon avis, de ma faible connaissance de Netbeans... et aussi du fait que je veux absolument passer par netbeans pour creer mon projet)
    Je cherche et vous tiens au courant avant de craquer
    Merci en tout cas de ton soutient bulbo,
    et de ton idée de mettre par défaut les fichiers dans le .jar et les modifiers via l'appli (peut être une piste pour plus tard, mais pour l'instant mes fichiers de conf se trouve exclusivement à l'exterieur du .jar)
    MERCI aussi de tes post dans la FAQ
    It isn't that they can't see the solution, it's that they can't see the problem.
    Mes Articles et Traductions (Microstrategy, Css et Javascript)
    Si vous souhaitez contribuer à la rubrique BI, contactez-moi ou tout autre membre de l'équipe BI par MP.

  8. #8
    Rédactrice

    Avatar de kalyparker
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 327
    Par défaut
    C'est encore moi,
    J'ai (enfin) fini de créer mon jar executable avec mon repertoire contenant mes fichiers de config là où se trouve le jar.
    J'ai pas trouvé de solution native dans Netbeans pour qu'il créer automatiquent le repertoire là où il créer le jar.
    Si je déclare ce repertoire en sources, il copie automatiquement ce repertoire dans le jar.
    En le déclarant en lib, il me l'inclus dans le repertoire lib

    J'ai appris dans un de mes post précédents qu'il était possible de généré un .exe (pour windows quoi) contenant le jre.
    On m'avait indiqué que launch4j pouvais faire ça, mais en créer mon exe et en l'installant sur une autre machine qui n'a pas le jre installé, ça marche pas.
    En farfouillant un peu sur la toile, j'ai découvert qu'en fait launch4j n'inclus pas le jre dans son exe, il pointe simplement vers le repertoire du jre, et ça ça m'arrange pas des masses...
    Connaissez vous un programme qui inclus réellement le jre dans un exe ou n'est ce qu'une utopie ?
    It isn't that they can't see the solution, it's that they can't see the problem.
    Mes Articles et Traductions (Microstrategy, Css et Javascript)
    Si vous souhaitez contribuer à la rubrique BI, contactez-moi ou tout autre membre de l'équipe BI par MP.

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Août 2002
    Messages : 35
    Par défaut
    En ce qui concerne la création d'un exe avec JRE inclus, à ma connaissance, il n'y a que JBuilder qui fasse ça de façon simple et efficace...

    Les autres outils ( gratuits ) tels que Launch4J, ne permettent pas d'intégrer de JRE. En revanche, l'outil Exe4J a une particularité intéressante dans la mesure où tu peux spécifier les JRE avec lesquelles ton exe peut tourner et surtout, tu peux inclure ton(tes) jar(s) dans ton exe. Ce qui veut dire, un seul et unique fichier à déployer ! L'exécutable détecte par la suite les JRE installées sur le système hôte.

    Autrement, si tu tiens absolument à déployer ta JRE avec ton exe, tu peux utiliser un programme d'installation du type InstallAnywhere.

  10. #10
    Rédactrice

    Avatar de kalyparker
    Femme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Janvier 2007
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 327
    Par défaut
    Les autres outils ( gratuits ) tels que Launch4J, ne permettent pas d'intégrer de JRE. En revanche, l'outil Exe4J a une particularité intéressante dans la mesure où tu peux spécifier les JRE avec lesquelles ton exe peut tourner et surtout, tu peux inclure ton(tes) jar(s) dans ton exe. Ce qui veut dire, un seul et unique fichier à déployer ! L'exécutable détecte par la suite les JRE installées sur le système hôte.
    Launch4J aussi permet d'inclure les jar dans l'exe. Il permet aussi de definir la version du jre minimal pour faire tourner l'exe

    Autrement, si tu tiens absolument à déployer ta JRE avec ton exe, tu peux utiliser un programme d'installation du type InstallAnywhere.
    donc dans tout les cas, il faut le jre d'installé.

    Ok, merci pour tout,
    je ferme le sujet
    It isn't that they can't see the solution, it's that they can't see the problem.
    Mes Articles et Traductions (Microstrategy, Css et Javascript)
    Si vous souhaitez contribuer à la rubrique BI, contactez-moi ou tout autre membre de l'équipe BI par MP.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 15/04/2008, 15h03
  2. Organisation d'un projet Flash/Plusieurs animations
    Par preempalver dans le forum Flash
    Réponses: 3
    Dernier message: 28/06/2007, 13h17
  3. Comment organiser un mini projet en C
    Par leCcsympas dans le forum C
    Réponses: 8
    Dernier message: 11/12/2006, 21h13
  4. Organisation d'un projet Flash
    Par nounetmasque dans le forum Flash
    Réponses: 3
    Dernier message: 16/11/2006, 15h20
  5. [Package]Organisation d'un projet
    Par willowII dans le forum Langage
    Réponses: 7
    Dernier message: 23/10/2005, 12h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo