Perl 命令是什么;cpan报告”;你到底是怎么做的?

Perl 命令是什么;cpan报告”;你到底是怎么做的?,perl,cpan,Perl,Cpan,我试图用命令cpan install Moose在perl 5.32.0中安装Moose。安装失败,并显示以下消息: Result: FAIL Failed 448/478 test programs. 12/30 subtests failed. Makefile:2047: recipe for target 'test_dynamic' failed make: *** [test_dynamic] Error 255 ETHER/Moose-2.2013.tar.gz 13 depe

我试图用命令
cpan install Moose
在perl 5.32.0中安装Moose。安装失败,并显示以下消息:

Result: FAIL
Failed 448/478 test programs. 12/30 subtests failed.
Makefile:2047: recipe for target 'test_dynamic' failed
make: *** [test_dynamic] Error 255
  ETHER/Moose-2.2013.tar.gz
13 dependencies missing (Class::Load,Class::Load::XS,Data::OptList,Devel::OverloadInfo,Dist::CheckConflicts,Module::Runtime::Conflicts,Package::DeprecationManager,Package::Stash,Package::Stash::XS,Params::Util,Sub::Exporter,Sub::Identify,Test::CleanNamespaces); additionally test harness failed
  /usr/bin/make test -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
  reports ETHER/Moose-2.2013.tar.gz
我尝试了命令
cpan reports ETHER/Moose-2.2013.tar.gz
,不知怎的,这个命令正确地安装了Moose。这里发生了什么事?
cpan报告
具体做什么?这与App::cpanreports相同吗?

[您问为什么使用
cpan报告…
而不是
cpan安装…
帮助。这回答了这个问题。brian d foy解释了为什么
cpan报告…
不是您想要执行的。]

它尝试安装名为
reports
的模块


cpan
的语法是

cpan[选项][…]
该操作是通过选项指定的。默认的操作员是
-i
(安装)


cpan安装Moose

此命令尝试安装两个发行版:

  • 包含模块
    安装的最新版本

    已创建使用此名称的,因此不应产生任何错误

    较新版本的
    cpan
    只需忽略此错误请求

  • 最新的一个包含模块
    Moose

    这是目前的
    ETHER/Moose-2.2013.tar.gz


cpan报告ETHER/Moose-2.2013.tar.gz

此命令尝试安装两个发行版:

  • 包含模块
    报告的最新版本

    没有名为
    reports
    的模块,因此该部分出现故障

    >(错误):无法展开[报告]。检查模块名称。
    >(信息):如果您安装了Text::Levenshtein::XS、Text::Levenshtein::Damerau::XS、Text::Levenshtein和Text::Levenshtein::Damerau::PP中的一种,我可以为您推荐名称
    >(信息):并且在调用时提供-x选项。
    >(错误):跳过报告,因为找不到匹配的命名空间。
    
  • 以太/驼鹿-2.2013.tar.gz


所以

cpan安装Moose
这只是一种糟糕的写作方式

cpan驼鹿
而且

cpan报告ETHER/Moose-2.2013.tar.gz
这只是一种糟糕的写作方式

cpan乙醚/Moose-2.2013.tar.gz
目前,这应该相当于

cpan驼鹿

换句话说,您声称无效的命令与您声称有效的命令之间没有区别。

那里的错误消息指的是您可以在CPAN.pm shell中执行的操作,
CPAN
命令没有任何映射到该命令的内容。即使是这样,看起来也不一样了

cpan
无参数将您放入cpan.pm shell,您可以在其中发出命令(例如
install
等等)。对于
报告
,您需要首先安装LWP和CPAN::Reporter:

% cpan LWP CPAN::Reporter
...
% cpan
cpan[1]> reports ETHER/Moose-2.2013.tar.gz
Distribution: E/ET/ETHER/Moose-2.2013.tar.gz
Fetching 'http://www.cpantesters.org/show/Moose.json'...DONE

2.2013:
 +PASS 5.28.0 on SunOS/Solaris 2.11 (i86pc-solaris-64)
 +PASS 5.28.3 on GNU/Linux 5.4.34-0-lts (x86_64-linux-thread-multi)
 +PASS 5.22.4 on GNU/Linux 5.4.0-26-generic (x86_64-linux)
 +PASS 5.26.0 on FreeBSD 12.1-release (i386-freebsd-64int)
 +PASS 5.26.0 on SunOS/Solaris 2.11 (i86pc-solaris-64)

但是,查看特定模块的结果可能更容易。

有趣。我尝试在一个新的local::lib中运行
cpanmoose
。我也有同样的问题。我再次执行了相同的命令。现在Moose安装正确了。所以出于某种原因,我必须安装Moose两次。这是一个完全不同的问题。