2009-03-31 1 views
2

Я использую Perl 5.10.0 на Debian Linux (тестирование) и пытаюсь установить модуль Perl Net::Amazon::MechanicalTurk версии 1.01. При запуске тестов модуля, я получаю ошибки, такие как:Как я могу исправить ошибки Net :: Amazon :: MechanicalTurk?

 
t/01-ListOperations.......................Can't locate object method "new" via package "Net::Amazon::MechanicalTurk::Transport::RESTTransport" at /home/user/.cpan/build/Net-Amazon-MechanicalTurk-1.01-BO885C/blib/lib/Net/Amazon/MechanicalTurk/Transport.pm line 21. 
dubious 
[...] 
Failed 21/33 test scripts. 12/78 subtests failed. 
Files=33, Tests=78, 46 wallclock secs (1.50 cusr + 0.22 csys = 1.72 CPU) 
Failed 21/33 test programs. 12/78 subtests failed. 

Net::Amazon::MechanicalTurk::Transport::RESTTransport ISA Net::Amazon::MechanicalTurk::Transport который ISA Net::Amazon::MechanicalTurk::BaseObject который имеет суб «новый».

У меня установлены все необходимые модули, что подтверждается сценарием mturk_install.pl. Я проверил проблемы на странице CPAN модуля, но эти ошибки не рассматриваются.

У кого-нибудь возникли проблемы и придумали какие-либо решения? Если вы успешно используете этот модуль, какую версию Perl вы используете?

ответ

0

Согласно CPAN тестировщикам, последней версию Perl, который работал с Net::Amazon::MechanicalTurk было 5.8.9. Я создал локальную копию для использования с этим конкретным модулем.

2

Я создал небольшой патч, который помогает решить эту проблему. Во внутренней логике библиотеки есть ошибка, которая помешала всем модулям правильно загрузиться. Посмотрите патч и мое описание на http://daveviner.blogspot.com/2009/12/amazon-mechanical-turk-perl-library.html

1

Я применил патч Дейва Винера и два патча в очереди RT. Существует несанкционированный выпуск с версией 1.01_01 в my CPAN directory. После этого я проверю ответ CPAN Testers на исправления и работу над официальным релизом. Если вы автор оригинала, свяжитесь со мной.

1

Я знаю, что это старый пост, но даже в новой версии 1.02 это все еще проблема. Легко исправить tho - просто удалить «определенный» из строки 35 библиотеки lib/Net/Amazon/MechanicalTurk/ModuleUtil.pm, и все готово. Очевидно, все в Amazon запускают старую версию Perl.

Смежные вопросы