import joptsimple.OptionParser;
import joptsimple.OptionSet;
public class CommandLineParser {
public static void main(String[] args) {
OptionParser parser = new OptionParser();
parser.accepts("a");
parser.accepts("b").withOptionalArg();
parser.accepts("c").withRequiredArg().ofType(Integer.class);
OptionSet options = parser.parse(args);
if (options.has("a")) {
System.out.println("Option a is present");
}
if (options.has("b")) {
if (options.hasArgument("b")) {
System.out.println("Option b is present with value: " + options.valueOf("b"));
} else {
System.out.println("Option b is present without a value");
}
}
if (options.has("c")) {
System.out.println("Option c is present with value: " + options.valueOf("c"));
}
}
}
java CommandLineParser -a -b value -c 10
Option a is present
Option b is present with value: value
Option c is present with value: 10
<dependency>
<groupId>net.sf.jopt-simple</groupId>
<artifactId>jopt-simple</artifactId>
<version>5.0.4</version>
</dependency>