0

我正在使用 JCommander 解析我的一个 Java 程序中的命令行参数。我的程序需要一个-p我声明为的参数(调用它),variableArity它可以接受任意数量的参数(包括 0)。我需要始终将-p标志传递给程序,无论它是否接受任何参数,以便在没有传递任何内容时将其解析为空列表,如果传递了至少一个参数,则将其解析为字符串列表。问题是,每当我没有向-p标志传递任何内容时,程序都会抛出一个ParameterException,使我的程序崩溃。JCommander 是否支持这种行为,还是我需要找到另一种方法来做到这一点?

举个例子,如果我调用我的程序:

java program -p -arg1 ...

我希望将相应的列表解析为空列表,如果我调用它:

java program -p p1 p2 -arg1 ...

我希望将相应的 List 解析为包含p1and的列表p2

4

0 回答 0