Apache Commons CLI - Genel Bakış

Apache Commons CLI, Java API'den türetilen ve programlara aktarılan komut satırı argümanlarını / seçeneklerini ayrıştırmak için bir API sağlayan Apache Commons bileşenleridir. Bu API ayrıca mevcut seçeneklerle ilgili yardımın yazdırılmasını sağlar.

Komut satırı işleme üç aşamadan oluşur. Bu aşamalar aşağıda açıklanmıştır -

  • Tanım Aşaması
  • Ayrıştırma Aşaması
  • Sorgulama Aşaması

Tanım Aşaması

Tanımlama aşamasında, bir uygulamanın alabileceği seçenekleri tanımlıyor ve ona göre hareket ediyoruz. Commons CLI, Option nesneleri için bir kap olan Options sınıfını sağlar.

// create Options object
Options options = new Options();

// add a option
options.addOption("a", false, "add two numbers");

Burada bir seçenek bayrağı ekledik, ikinci parametre olarak false, seçeneğin zorunlu olmadığını ve üçüncü parametre seçeneğin açıklamasını belirtir.

Ayrıştırma Aşaması

Ayrıştırma aşamasında, bir ayrıştırıcı örneği oluşturduktan sonra komut satırı argümanları kullanılarak geçirilen seçenekleri ayrıştırıyoruz.

//Create a parser
CommandLineParser parser = new DefaultParser();

//parse the options passed as command line arguments
CommandLine cmd = parser.parse( options, args);

Sorgulama Aşaması

Sorgulama aşamasında, belirli bir seçeneğin olup olmadığını kontrol edip ardından komutu ona göre işleriz.

//hasOptions checks if option is present or not
if(cmd.hasOption("a")) {
   // add the two numbers
} else if(cmd.hasOption("m")) {
   // multiply the two numbers
}