加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何找到我的Perl脚本的模块依赖项?

发布时间:2020-12-15 21:24:02 所属栏目:大数据 来源:网络整理
导读:我想另一个开发人员运行我写的Perl脚本。该脚本使用许多CPAN模块,必须先安装,然后才能运行脚本。是否有可能使脚本(或perl二进制)转储所有丢失的模块的列表?当我尝试运行脚本时,Perl打印出缺少的模块名称,但这是详细的,并不会一次列出所有缺失的模块。
我想另一个开发人员运行我写的Perl脚本。该脚本使用许多CPAN模块,必须先安装,然后才能运行脚本。是否有可能使脚本(或perl二进制)转储所有丢失的模块的列表?当我尝试运行脚本时,Perl打印出缺少的模块名称,但这是详细的,并不会一次列出所有缺失的模块。我想做一些事情:
$ cpan -i `said-script --list-deps`

甚至:

$ list-deps said-script > required-modules # on my machine
$ cpan -i `cat required-modules` # on his machine

有没有简单的方法来做呢?这不是一个显示停止,但我想让其他开发人员的生活更轻松。 (所需的模块被洒在几个文件,所以我不容易手工制作列表而没有丢失任何东西我知道大约PAR,但似乎有点太复杂,我想要的。

更新:谢谢,曼尼,会做。我不知道%INC,我只知道@INC。我决定用这样的东西:

print join("n",map { s|/|::|g; s|.pm$||; $_ } keys %INC);

其中打印出:

Moose::Meta::TypeConstraint::Registry
Moose::Meta::Role::Application::ToClass
Class::C3
List::Util
Imager::Color
…

看起来这将工作。

解决方法

您可以在脚本结尾转储%INC。它将包含所有使用和需要的模块。但是,当然,这只会有帮助,如果你不需要有条件的模块(如果$ bar需要Foo)。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读