Picocli автоматически сбрасывает все поля, помеченные @Option
и @Parameter
, на значения по умолчанию (которые могут быть null
) непосредственно перед анализом аргументов командной строки. (Это то, что позволяет CommandLine
объектам использоваться повторно.) Нет необходимости в определяемом пользователем методе reset
.
Я попытался использовать атрибут defaultValue аннотации @Option, но он не сбрасывал значение поля при каждом вызове.
Можете ли вы привести пример, воспроизводящий эту проблему?
В качестве альтернативы, когда вы воспроизводите проблему в своем приложении, Можете ли вы запустить его с системным свойством -Dpicocli.trace=DEBUG
и опубликовать вывод?
Примечание. Я все еще на Picocli 3.9.6, но я планирую обновить до 4.x, так что если это часть решения, это хорошо.
Пожалуйста, обновите до 4.x, последняя версия picocli имеет много исправлений ошибок и новых функций, и в целом намного лучше. Однако поведение «перезагрузки» долгое время было частью picocli, конечно, в версии 3.x, возможно, даже раньше.