DĂ©pendance Maven
<dependencies>
<dependency>
<groupId>commons-cli</groupId>
<artifactId>commons-cli</artifactId>
<version>1.5.0</version>
</dependency>
</dependencies>
Exemple Apache Commons Cli
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.CommandLineParser;
import org.apache.commons.cli.DefaultParser;
import org.apache.commons.cli.HelpFormatter;
import org.apache.commons.cli.Option;
import org.apache.commons.cli.Options;
import org.apache.commons.cli.ParseException;
public class CliApp {
public static void main(String[] args) {
// Toutes les options de la commande
Options options = new Options();
// Exemple de l'option echo
Option echo = new Option("e", "echo", true, "Affiche le texte de l'argument");
options.addOption(echo);
// Exemple de l'option version
Option version = new Option("v", "version", false, "Affiche la version du programme");
options.addOption(version);
// Analyseur syntaxique pour le traitement de la commande
CommandLineParser parser = new DefaultParser();
try {
// La ligne de commande traitée par l'analyseur
CommandLine cmdLine = parser.parse(options, args);
// Récupère la valeur de l'option echo
String echoArg = cmdLine.getOptionValue("echo");
// Si l'argument n'est pas nul
if (echoArg != null) {
System.out.println(echoArg);
}
// Sinon si la commande a l'option version
else if (cmdLine.hasOption(version)) {
System.out.println("Version : 1.0");
}
} catch (ParseException e) {
System.out.println(e.getMessage());
// Imprime automatiquement l'aide pour les options dans la console
HelpFormatter helpFormatter = new HelpFormatter();
helpFormatter.printHelp("programme-cli", options);
}
}
}
Commentaires
Enregistrer un commentaire