Benutzer-Werkzeuge

Webseiten-Werkzeuge


prog:java_commons_cli

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
prog:java_commons_cli [2013/05/02 11:33]
gpipperr
prog:java_commons_cli [2013/05/02 11:34] (aktuell)
gpipperr
Zeile 1: Zeile 1:
 +====== Kommando Zeilen Parameter in Java mit der Apache Commons CLI library verarbeiten ======
 +
 +Mit der Apache Java Library **Commons CLI** steht eine Bibliothek für das Parsen von Parametern für den Aufruf von Java Programmen zur Verfügung.
 +
 +Vorbereitung:
 +
 +Download der Jar Dateien: http://commons.apache.org/proper/commons-cli/download_cli.cgi
 +
 +
 +
 +Beispiel:
 +
 +Import:
 +
 +<code java>
 +import org.apache.commons.cli.*;
 +</code>
 +
 +
 +Optionen definieren:
 +
 +<code java>
 +.
 +..
 +...
 +//
 +// zum Beispiel im Konstruktor der Klasse oder in einen static {} Konstrukt
 +//
 +
 +// Mit Hilfe des OptionBuilder 
 +// Hilfreich bei Optionen mit Parametern
 +Option minPWDAsciiCode = OptionBuilder.withArgName("31")
 +                                      .hasArg()
 +                                      .withDescription("Minimal dezimal ascii code for the password")
 +                                      .create("minAscii");
 +
 +// Neue Option anlegen
 +// Ohne Parameter
 +
 +Option help = new Option("help", "print this message");
 +
 +
 +// Optionsliste erstellen
 +options = new Options();
 +
 +options.addOption(minPWDAsciiCode );
 +options.addOption(help);
 +
 +
 +...
 +..
 +.
 +</code>
 +
 +
 +
 +Optionen parsen:
 +
 +In der Dokumentation wird die Klasse „DefaultParser“ verwendet, in der aktuellen Version fehlt aber diese Klasse! Daher wird die Klasse  „BasicParser“ eingesetzt.
 +
 +<code java>
 +...
 +
 +public static void main(String[] args) {
 +
 +
 +// Create Help Output from the command options
 +HelpFormatter formatter = new HelpFormatter();
 +
 +// create the parser for the command line
 +CommandLineParser parser = new BasicParser();
 +CommandLine cmdLine = null;
 +try {
 +   // parse the command line arguments
 +   cmdLine = parser.parse(options, args);
 +}
 +catch (ParseException exp) {
 +   System.err.println("-- Error :: Wrong command ::   Reason: " + exp.getMessage());
 +   formatter.printHelp("PWD Check", options);
 +   System.exit(-1);
 +}
 +
 +...
 +
 +</code>
 +
 +
 +Parameter auswerten:
 +
 +<code java>
 +...
 +if (cmdLine.hasOption("minAscii")) {
 +   minAscii= cmdLine.getOptionValue("minAscii");
 +}
 +..
 +</code>
 +
 +
 +Hilfe ausgeben:
 +<code java>
 +...
 +// help Option
 +if (cmdLine.hasOption("help")) {
 +   formatter.printHelp("PWD Check", options);
 +   System.exit(-1);
 +}
 +...
 +</code>
 +
 +
 +===== Quellen =====
 +
 +
 +http://commons.apache.org/proper/commons-cli/index.html
  
"Autor: Gunther Pipperr"
prog/java_commons_cli.txt · Zuletzt geändert: 2013/05/02 11:34 von gpipperr