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 :

Emplacement de mes classes


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 176
    Par défaut Emplacement de mes classes
    Bonjour,

    J'aimerai savoir comment je peux faire pour connaitre l'emplacement de mes classes dans mon programme JAVA.

    En clair, j'ai un fichier bat ou bash qui lance ma classe principale.
    Et je fais dans mon bureau, un raccourcit vers le fichier bat ou bash.

    Seulement, j'ai dans le répertoire de ma classe principale des fichiers de configuration et j'aimerai pouvoir y accéder depuis mon programme principal sans avoir à fournit le home directory de mon application au programme.

    Merci d'avance.

    Pierre

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    si il sont au même endroit qu'un .class, tes fichiers sont donc accessibles directement via le classpath. T'as juste à faire un ClassLoader.getResource()

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 176
    Par défaut
    Merci beaucoup.

    Mais j'aimerai une précision.
    Si j'ai cette arborescence :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    application/classes/com/anubis/toto.class
    application/classes/monfichier.txt
    et mon classpath contient :
    ../application/classes

    Pour récupérer mon fichier, il me suffit de faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    URL monFichierURL = getClass().getClassLoader().getRessource("monfichier.txt");
    File monFichier = new File(monFichierURL.getFile());
    Par contre comment puis-je faire si j'ai comme arborescence:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    application/classes/com/anubis/toto.class
    application/configuration/monfichier.txt
    Merci d'avance.

    Pierre

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    399
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 399
    Par défaut
    le ../ te permet de remonter d'un cran dans la hiérarchie.

    Sachant cela, tu peux en deduire le chemin relatif de ta ressource
    SPARK
    Moteur de particule C++ opensource avec modules de rendu OpenGL, Irrlicht et SFML

  5. #5
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par Anubis Voir le message

    Par contre comment puis-je faire si j'ai comme arborescence:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    application/classes/com/anubis/toto.class
    application/configuration/monfichier.txt
    Merci d'avance.

    Pierre
    Ha ben la, je dirais qu'il n'est plus ce que je qualifierais de 'au même endroit' Le classloader n'y aura pas accès (le ../ mentionné par un autre utilisateur ne pourra pas remonter plus haut que classes/)

    Personellement, je recommande de mettre les fichiers de config 'fixe' (config par défaut ou autre) avec les .class, çà permet de les joindre au jar. Pour ce qui est des config qui sont différentes à chaque utilisateur, l'utilisation de la propriété système "user.home" est utile

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 176
    Par défaut
    Ok, merci beaucoup.

    A plus.

    Pierre

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 176
    Par défaut
    Je reviens sur ce sujet car j'aimerai des précisions.
    J'ai mon application avec l'arborescence suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    libs/
    language/
    configuration/
    start.bat
    start.ksh
    Et j'aimerai pouvoir déplacer mon application n'importe où sur le disque sans avoir à modifier la configuration.

    Pour être plus clair, je vais donner un exemple, j'aimerai faire comme avec 'eclipse'.
    Avec 'eclipse', je peux créer un raccourci sur mon bureau qui pointe sur le eclipse.exe et cela fonction.
    Je peux le déplace de C:/programFiles vers D:/ et cela marche encore.

    Est-ce que vous pouvez me préciser comment on peux faire ceci, s'il vous plait?

    merci d'avance.

    Pierre

Discussions similaires

  1. [DAO] Comment gérer les liens avec la bdd dans mes classes?
    Par Wormus dans le forum Autres
    Réponses: 6
    Dernier message: 22/02/2006, 16h14
  2. [Obfuscateur] Comment crypter mes .class en java
    Par ferma dans le forum EDI et Outils pour Java
    Réponses: 1
    Dernier message: 01/01/2006, 23h36
  3. [MFC] où instancier mes classes?
    Par giova_fr dans le forum MFC
    Réponses: 3
    Dernier message: 26/07/2005, 13h15
  4. Réponses: 7
    Dernier message: 11/04/2005, 22h23
  5. ClassWizard --> comment lui faire reconnaitre mes classes
    Par bigboomshakala dans le forum MFC
    Réponses: 6
    Dernier message: 06/05/2004, 10h50

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