arg4j的多个args

use*_*439 6 java args4j

我有一个参数,我需要从命令行解析.我用的是版本2.0.23的arg4j.我需要解析路径参数,并且在命令行中可以指定一个或多个路径.所以我需要解析多个参数.这是我找到的方式:

private List<String> list = new ArrayList<String>();

@Option(name = "-p", required = true)
public void addPath(String arg) {list.add(arg);}  
Run Code Online (Sandbox Code Playgroud)

它工作正常.但我想知道它是正确的还是有更好的方法?我在Google 2.0.13中搜索过@Option中有参数multipleValue,但现在看来它已经消失了.

don*_*ton 11

尝试:

import org.kohsuke.args4j.spi.StringArrayOptionHandler;

@Option(name = "-p", handler = StringArrayOptionHandler.class, required = true)
private List<String> list;
Run Code Online (Sandbox Code Playgroud)

这应该允许

-p arg1 arg2 ...
Run Code Online (Sandbox Code Playgroud)