我有一个参数需要从命令行解析。我用的是版本2.0.23的arg4j。我需要解析路径参数,并且在命令行中可以指定一个或多个路径。所以我需要解析多个参数。这是我找到的方式:
private List<String> list = new ArrayList<String>();
@Option(name = "-p", required = true)
public void addPath(String arg) {list.add(arg);}
一切正常。但我想知道它是正确的还是有更好的方法? 我在Google 2.0.13中搜索过@Option中有参数multipleValue,但现在看来它已经消失了。
答案 0 :(得分:8)
尝试:
import org.kohsuke.args4j.spi.StringArrayOptionHandler;
@Option(name = "-p", handler = StringArrayOptionHandler.class, required = true)
private List<String> list;
应该允许
-p arg1 arg2 ...