2

我在 Debian Linux(测试)上使用 Perl 5.10.0 并尝试安装 Perl 模块Net::Amazon::MechanicalTurk 1.01 版。当我运行模块的测试套件时,我收到如下错误:

t/01-ListOperations.............无法通过包“Net::Amazon::MechanicalTurk::Transport”找到对象方法“new” ::RESTTransport”,位于 /home/user/.cpan/build/Net-Amazon-MechanicalTurk-1.01-BO885C/blib/lib/Net/Amazon/MechanicalTurk/Transport.pm 第 21 行。
可疑
[...]
21/33 测试脚本失败。12/78 分测试失败。
Files=33, Tests=78, 46 wallclock secs (1.50 cusr + 0.22 csys = 1.72 CPU)
21/33 测试程序失败。12/78 分测试失败。

Net::Amazon::MechanicalTurk::Transport::RESTTransportISANet::Amazon::MechanicalTurk::Transport里面Net::Amazon::MechanicalTurk::BaseObject有一个子“新”的ISA。

mturk_install.pl正如脚本所验证的,我已安装所有必需的模块。我已经检查了模块的 CPAN 页面上的问题,但没有解决这些错误。

有没有人遇到这些问题并提出任何解决方案?如果你成功使用了这个模块,你运行的是哪个版本的 Perl?

4

6 回答 6

4

CPAN 测试人员也有类似的经历。

http://www.nntp.perl.org/group/perl.cpan.testers/2009/03/msg3437850.html

于 2009-03-31T14:22:45.790 回答
2

我已经构建了一个小补丁来帮助解决这个问题。库的内部逻辑存在错误,导致所有模块无法正确加载。在http://daveviner.blogspot.com/2009/12/amazon-mechanical-turk-perl-library.html查看补丁和我的描述

于 2009-12-14T01:27:44.517 回答
2

您应该向Net::Amazon::MechanicalTurk 的 CPAN bugtracker 队列提交错误报告

于 2009-04-03T08:55:50.053 回答
1

我知道这是旧帖子,但即使在新的 1.02 版本中它仍然是一个问题。修复起来很容易——只需从 lib/Net/Amazon/MechanicalTurk/ModuleUtil.pm 的第 35 行删除“已定义”即可。显然亚马逊的每个人都运行旧版本的 Perl。

于 2012-11-30T04:46:14.313 回答
1

我已经应用了 Dave Viner 的补丁和 RT 队列中的两个补丁。在我的 CPAN 目录中有未经授权的版本 1.01_01 。我将检查 CPAN 测试人员对修复的响应,然后在正式版本上工作。如果你是原作者,请联系我。

于 2010-02-06T02:32:18.053 回答
0

根据 CPAN 测试人员的说法,与Net::Amazon::MechanicalTurk一起使用的最新 Perl 版本是 5.8.9。我为这个特定模块构建了一个本地副本。

于 2009-09-13T22:29:02.073 回答