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 :

Méthode de parsing pour une ligne de commande


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    BiM
    BiM est déconnecté
    Expert confirmé
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Par défaut Méthode de parsing pour une ligne de commande
    Bonjour,

    Je dois créer une classe Java qui sera appelée par ligne de commande. Je suppose que je met l'éxécution dans ma méthode main()... ?

    Bon alors, déjà ça c'est pas mon fort, vous avez une petite démonstration svp ?
    Et la même chose avec la classe dans un Jar ?

    Et connaissez-vous une méthode de parsing pour les paramètres de la méthodes genre... "-a auteur -d date -b true" ?

    Merci d'avance !

  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
    alors dans l'ordre:
    Citation Envoyé par BiM Voir le message
    Bon alors, déjà ça c'est pas mon fort, vous avez une petite démonstration svp ?
    Pour créer un main ,t'en trouvera dans tous les cours de java sur le site de developpez. Un petit exemple ici http://bruce-eckel.developpez.com/li...&page=1#01.020. Pour les JARs, faut packager dans un jar avec la command "jar" et fournir un MANIFEST.MF référencant le main. Plus d'infos ici: comment créer un JAR exécutable

    Et connaissez-vous une méthode de parsing pour les paramètres de la méthodes genre... "-a auteur -d date -b true" ?
    commons CLI est une librairie java très pratique pour gérer les paramètres en ligne de commande, afficher de l'aide, traiter les erreurs. Plus d'info sur le site
    http://commons.apache.org/cli/

  3. #3
    BiM
    BiM est déconnecté
    Expert confirmé
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Par défaut
    Merci tchize_ mais c'était pas ça les deux premières questions

    Je voulais juste une confirmation pour la création d'un main(), donc oui il faut bien en faire un (après je sais l'écrire puis Eclipse est trop fort, il sait aussi ).

    Pour la deuxième question, c'était plutôt sur l'appel à ma classe qu'allait ma question. Notamment à cause des paramètres. Parce que je suppose qu'on appelle la classe avec la commande "java" qui elle a des paramètres, alors comment faire pour prendre en compte MES paramètres ?

    java mon.package.MaClasse -a auteur par exemple. Est-ce que Java différencie automatiquement que tout ce qu'il y a après java mon.package.MaClasse sont mes paramètres ?

    Et j'ai vu effectivement plusieurs librairies :
    • Commons CLI d'Apache
    • JSAP
    • args4j


    As-tu un conseil sur l'utilisation de l'une ou l'autre stp ?

  4. #4
    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
    Donc oui il faut un main (faut bien que ton programme commence quelque part)

    Dans la ligne de commande, tout ce qui se trouve après le nom de ta classe est passé en paramètre à ton main, tout ce qui se trouve devant est passé en paramètre à la jvm.

    Je n'ai utilisé perso que commosn cli. Facile à utiliser, te permet des paramètres indéterminés en cas de besoin, permet de typer els paramètre, permet d'associer raccuorcis et aide à chaque parameètre, génère l'aide en fonction de ta liste de paramètres et l'affiche.

  5. #5
    BiM
    BiM est déconnecté
    Expert confirmé
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Par défaut
    Ok merci.

    Permet-il de gérer des listes (plusieurs valeurs pour un paramètre) ?
    Y-a t'il des dépendances ?

  6. #6
    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
    oui, tu peux avoir des arguments de type liste il me semble:

    Citation Envoyé par OptionBuilder
    static OptionBuilder hasArgs()
    The next Option created can have unlimited argument values.
    Non il n'y a pas de dépendances:
    http://commons.apache.org/cli/dependencies.html

  7. #7
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 690
    Par défaut
    Pour ce genre de chose personnellement je ne recours pas a des bibliothèques.

    Je sais qu'il faut pas réinventer la roue, mais là je trouve que c'est quand même faire appel à un électricien pour changer une ampoule.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/06/2012, 14h05
  2. [OCaml] Parser une ligne de commande
    Par Thanatos dans le forum Caml
    Réponses: 4
    Dernier message: 10/12/2004, 10h11
  3. lancer une mdb a partir d'une ligne de commande
    Par dpie dans le forum Access
    Réponses: 5
    Dernier message: 30/11/2004, 15h01
  4. String Grid et choix d'une couleur pour une ligne
    Par Gigottine dans le forum C++Builder
    Réponses: 12
    Dernier message: 17/05/2002, 15h23

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