Имеет (или будет) JRE включить анализатор CLI

Обычно я использую известные анализаторы CLI (внешние библиотеки):

Apache Commons CLI http://commons.apache.org/cli/ (версия 1.2)

Java Gems http://code.google.com/p/javagems/

JArgs http://jargs.sourceforge.net/

...

Я не нашел его в стандартной библиотеке Java, и мне интересно, предоставляют ли новые версии Java реализацию, поэтому я могу сохранить зависимость. Кто-нибудь знает, есть ли что-то подобное или план включить его в будущем?

2 ответа

Если, когда вы говорите "родной", вы подразумеваете "реализация java, включенная в JDK", ответ "нет". Очевидно, вы всегда можете создать собственный (более или менее простой) парсер на основе массивов и строковых операций, предоставляемых java и JDK.

Что касается выбора среди java CLI-парсеров, я бы предложил вам использовать arg4j и может обратиться к следующему обсуждению: библиотека Java для синтаксического анализа параметров командной строки?

Один из ответов содержит очень длинный список библиотек.

И последнее примечание. Я не знаю, почему вы хотите "сохранить зависимости". Используйте один из инструментов сборки, которые управляют вашими зависимостями (например, плющ, maven, gradle) и забывают о таких проблемах. если вы хотите распространять свою программу как единую банку, вы можете упаковать все свои зависимости вместе с вашим приложением. Оба maven и gradle могут это сделать. Если вы хотите достичь минимального размера банки... сделайте свой выбор: что для вас важнее - размер или модульность. В большинстве случаев размер не является проблемой в наши дни.


Я не думаю, что в JDK есть что-то. Фактически OpenJDK сам использует JOpt Simple (см. Комментарий в нижней части страницы).

licensed under cc by-sa 3.0 with attribution.