Раньше я работал с Apache Commons Cli 1.2. Я хотел, чтобы анализатор игнорировал аргументы, если они неизвестны (не добавлены в Options-Object).
Пример (псевдокод):
Options specialOptions;
specialOptions.addOption(null, "help", false, "shows help");
specialOptions.addOption(null, "version", false, "show version");
CommandLineParser parser = new DefaultParser();
CommandLine cmd = parser.parse(options, args); //no third argument, since i dont want the program to stop parsing.
// run program with args: --help --unknown --version
// program shall parse --help AND --version, but ignore --unknown
Я использовал это решение Паскаля Шефера: может ли анализатор параметров командной строки Apache Commons игнорировать неизвестные параметры командной строки?
Это работало хорошо для меня на 1.2, и это прекрасно работает и на 1.3.1. Но его не рекомендуется. Парсер, который я использовал, был заменен на DefaultParser
. Я посмотрел функциональные возможности, но нет такого метода processOptions
.
Я действительно хотел бы использовать код, который не будет удален в более поздних выпусках. У кого-нибудь есть идеи, как решить эту проблему?