2015-10-09 4 views
-1

Я хотел бы использовать Getopt::ArgParse, так как он обеспечивает более удобный интерфейс, а затем Getopt :: Long. Теперь проблема в том, что Getopt :: ArgParse требует Moo, что, в свою очередь, требует целую кучу пакетов, которые не включены в стандартные хранилища CentOS. В соответствии с политикой клиента я немного ограничен в том, что я могу установить ... поэтому мне было интересно, есть ли пакет стиля argparse, который не требует Moo или Moose.perl argparse с меньшими зависимостями

EDIT Я даю Getopt::Lazy попробовать

РЕДАКТИРОВАНИЕ 2Getopt::Lazy, кажется, действительно устарел - here is my attempt at using it.

EDIT 3 я в надежде найти что-то, как годный к употреблению и dependencyless, как питоны argparse - его включены в стандартную библиотеку сейчас, и в более ранних версиях он просто необходим один файл ... после того, как возиться с различными модулями ввода завершившихся используя простой старый Getopt :: Long.

+0

Вы проверили https://metacpan.org/pod/MooseX::Getopt? – simbabque

+0

[Moose] (http://p3rl.org/Moose) имеет еще больше зависимостей, чем [Moo] (http://p3rl.org/Moo). – choroba

+0

@choroba true, я не понимал, что у меня включен epel repo ... Я обновлю свой вопрос. – Isaac

ответ

4

Быстрый взгляд на модули Getopt с минимальными зависимостями показывает ...

Однако, вы собираетесь найти работая в Perl, чтобы быть очень стесненным, если вы не можете установите модули CPAN. Вы будете тратить много времени и денег своего клиента на создание колес или использование более низких.

Вместо того, чтобы в зависимости от пакетов CentOS вы можете самостоятельно установить модули Perl и поместить их в проект, который вы разрабатываете. Что касается вашего клиента, это всего лишь код проекта. Самый простой способ сделать это - использовать local::lib и cpanm. Вы можете полностью нарушить свою зависимость от системы Perl и установить свою собственную версию perl с помощью perlbrew.