Apache Commons CLI - Opsi Argumen
Opsi Argumen ditunjukkan pada baris perintah dengan namanya dan nilainya yang sesuai. Misalnya, jika opsi ada, maka pengguna harus meneruskan nilainya. Pertimbangkan contoh berikut, jika kami mencetak log ke beberapa file, yang mana, kami ingin pengguna memasukkan nama file log dengan opsi argumen logFile.
Contoh
CLITester.java
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.CommandLineParser;
import org.apache.commons.cli.DefaultParser;
import org.apache.commons.cli.Option;
import org.apache.commons.cli.Options;
import org.apache.commons.cli.ParseException;
public class CLITester {
public static void main(String[] args) throws ParseException {
Options options = new Options();
Option logfile = Option.builder()
.longOpt("logFile")
.argName("file" )
.hasArg()
.desc("use given file for log" )
.build();
options.addOption(logfile);
CommandLineParser parser = new DefaultParser();
CommandLine cmd = parser.parse( options, args);
// has the logFile argument been passed?
if(cmd.hasOption("logFile")) {
//get the logFile argument passed
System.out.println( cmd.getOptionValue( "logFile" ) );
}
}
}
Keluaran
Jalankan file tersebut, sambil meneruskan --logFile sebagai opsi, nama file tersebut sebagai nilai opsi dan lihat hasilnya.
java CLITester --logFile test.log
test.log