如何在Java中解析命令行参数?

Java中解析命令行参数的好方法是什么?

回答:

例如,这是你commons-cli用来解析2个字符串参数的方法:

import org.apache.commons.cli.*;

public class Main {

public static void main(String[] args) throws Exception {

Options options = new Options();

Option input = new Option("i", "input", true, "input file path");

input.setRequired(true);

options.addOption(input);

Option output = new Option("o", "output", true, "output file");

output.setRequired(true);

options.addOption(output);

CommandLineParser parser = new DefaultParser();

HelpFormatter formatter = new HelpFormatter();

CommandLine cmd;

try {

cmd = parser.parse(options, args);

} catch (ParseException e) {

System.out.println(e.getMessage());

formatter.printHelp("utility-name", options);

System.exit(1);

}

String inputFilePath = cmd.getOptionValue("input");

String outputFilePath = cmd.getOptionValue("output");

System.out.println(inputFilePath);

System.out.println(outputFilePath);

}

}

从命令行使用:

$> java -jar target/my-utility.jar -i asd                                                                                       

Missing required option: o

usage: utility-name

-i,--input <arg> input file path

-o,--output <arg> output file

以上是 如何在Java中解析命令行参数? 的全部内容, 来源链接: utcz.com/qa/424562.html

回到顶部