(另见https://github.com/remkop/picocli/issues/488)
我有一个使用Map
字段作为选项的应用程序:
@Option(names = "-P")
Map<String, String> properties;
因此用户可以指定如下值:
-Pmyprop=myvalue
Picocli 有一个选项可以使用CommandLine.setPosixClusteredShortOptionsAllowed(false)
.
However, in that configuration, options are no longer recognized when the option value is attached to the option name. 上面的示例-Pmyprop=myvalue
失败并出现异常:
picocli.CommandLine$UnmatchedArgumentException: Unknown option: -Pmyprop=myvalue
当我用空格分隔选项名称-P
和选项值(键值对)时,该值被正确解析:
-P myprop=myvalue // this works
这是预期的行为吗?IMO,地图选项与其他选项不同,即使在不允许集群短选项的情况下,支持前者也会很有用。