使用Apache Commons CLI库时如何获取参数
我正在使用Apache Commons CLI来处理Java中的命令行参数。
我已经声明了a
和b
选项,并且我可以使用CommandLine.getOptionValue()
来访问该值。
Usage: myapp [OPTION] [DIRECTORY] Options: -a Option A -b Option B
如何声明和访问DIRECTORY变量?
使用以下方法:
CommandLine.getArgList()
返回处理选项后剩余的内容。
使用另一个选项(-d)来识别对用户更直观的目录可能更好。
或者以下代码演示了获取剩余的参数列表
public static void main(final String[] args) { final CommandLineParser parser = new BasicParser(); final Options options = new Options(); options.addOption("a", "opta", true, "Option A"); options.addOption("b", "optb", true, "Option B"); final CommandLine commandLine = parser.parse(options, args); final String optionA = getOption('a', commandLine); final String optionB = getOption('b', commandLine); final String[] remainingArguments = commandLine.getArgs(); System.out.println(String.format("OptionA: %s, OptionB: %s", optionA, optionB)); System.out.println("Remaining arguments: " + Arrays.toString(remainingArguments)); } public static String getOption(final char option, final CommandLine commandLine) { if (commandLine.hasOption(option)) { return commandLine.getOptionValue(option); } return StringUtils.EMPTY; }
- org.apache.commons.dbcp.DelegatingPreparedStatement已关闭
- Apache commons fileupload FileItemIterator hasNext()返回false
- Apache Commons CLI:获取选项的值列表
- apache commons配置加载属性,直到“,”字符
- 如何在java中提供FTP地址?
- 将java Map转换为自定义键=值字符串
- 我何时应该使用Apache Commons的Validate.isTrue,何时应该使用’assert’关键字?
- 公共网ftp死锁?
- Spring Framework是否支持多部分请求中的流模式