Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Processing Command Line Arguments in Java

DZone's Guide to

Processing Command Line Arguments in Java

· Java Zone
Free Resource

Just released, a free O’Reilly book on Reactive Microsystems: The Evolution of Microservices at Scale. Brought to you in partnership with Lightbend.

Rather than parsing command line arguments yourself, Apache has a nice library to do it for you, called Apache Commons CLI. It has a few different options, for various flavors of parsing, although this example demonstrates the two most common use cases (I think) – a flag, and setting a value.

The nice thing about this is it warns you if you specify incorrect arguments, so you can avoid worrying about that ever again.

import org.apache.commons.cli.*;
 
public class ArtEtl {
  public static void main(String[] args) throws Exception {
 
  Options options = new Options();
 
  options.addOption("d", false, "Delete records"); // does not have a value
  options.addOption("c", true, "CSV Repository"); // has a value
 
  CommandLineParser parser = new PosixParser();
  CommandLine cmd = parser.parse( options, args);
 
  if (cmd.hasOption("d")) {
    System.out.println("Clearing index");
    server.deleteByQuery("*:*");
  }
}

Strategies and techniques for building scalable and resilient microservices to refactor a monolithic application step-by-step, a free O'Reilly book. Brought to you in partnership with Lightbend.

Topics:

Published at DZone with permission of Gary Sieling, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}