CPAN要求文件

时间:2015-07-09 20:11:21

标签: perl cpan requirements.txt cpanm

使用pip,您可以创建需求文件以指定要安装的库。是否有使用CPAN的perl模块的等效项?

我遇到了ExtUtils :: MakeMaker,但这看起来像make文件专门用于每个模块。

我想尝试更好地了解我所问的是否有办法做某事

cpan install -r requirements.txt

然后指定要在该需求文件中安装的模块。

提前致谢!

2 个答案:

答案 0 :(得分:10)

从CPAN安装模块时,每个模块在Makefile.PL(或Build.PL)中指定其依赖项,CPAN shell将在安装时递归地解析这些依赖项。

如果要为应用程序(而不是CPAN模块)指定依赖项,可以使用以下格式创建名为cpanfile的文件:

requires 'JSON';
requires 'Template';
requires 'DateTime';
requires 'DBIx::Class';

然后,您可以使用一个命令安装这些依赖项:

cpanm --installdeps .

cpanm命令来自App::cpanminus发行版,是从CPAN安装模块的替代工具。

有关详细信息,请参阅cpanfile docs

答案 1 :(得分:5)

我认为Carton正是您所寻找的。

要开始使用Carton,请安装它。然后使用您的依赖项创建一个cpanfile:

require 'Test::Most';
require 'Math::BaseConvert';

使用此文件,运行

carton install

如果需要,这将安装这些模块,并编写一个名为cpanfile.snapshot的文件,其中包含依赖信息。

另见:Brief Notes on Managing Perl Dependencies with Carton

PS:查看Stratopan。