<dependency>
<groupId>commons-cli</groupId>
<artifactId>commons-cli</artifactId>
<version>1.4</version>
</dependency>
Options options = new Options();
options.addOption(Option.builder("name")
.required()
.hasArg()
.desc("The name parameter")
.build());
CommandLineParser parser = new DefaultParser();
try {
CommandLine cmd = parser.parse(options, args);
if (cmd.hasOption("name")) {
String name = cmd.getOptionValue("name");
System.out.println("Hello, " + name + "!");
}
} catch (ParseException e) {
System.out.println("Invalid command: " + e.getMessage());
}
HelpFormatter formatter = new HelpFormatter();
formatter.printHelp("myapp", options);
import org.apache.commons.cli.*;
public class CommandLineCalculator {
public static void main(String[] args) {
Options options = new Options();
options.addOption(Option.builder("a")
.required()
.hasArg()
.desc("The first number")
.build());
options.addOption(Option.builder("b")
.required()
.hasArg()
.desc("The second number")
.build());
CommandLineParser parser = new DefaultParser();
try {
CommandLine cmd = parser.parse(options, args);
if (cmd.hasOption("a") && cmd.hasOption("b")) {
double num1 = Double.parseDouble(cmd.getOptionValue("a"));
double num2 = Double.parseDouble(cmd.getOptionValue("b"));
double result = num1 + num2;
System.out.println("Result: " + result);
}
} catch (ParseException e) {
System.out.println("Invalid command: " + e.getMessage());
}
}
}