使用cpanp安装本地模块+子模块

时间:2020-09-23 03:39:39

标签: perl cpan

我具有以下项目结构:

A/
|- B.pm
|- B/
 |- one.pm
 |- two.pm
 |- three.pm

B.pm中,我有:

package A::B;

use A::B::one;
use A::B::two;
use A::B::three;

现在,我正在尝试使用cpanp在本地安装此模块。在A目录中时,我只需运行:

cpanp i .

它说模块'A'已成功安装,但是,当我列出$PERL5LIB目录的内容时,只能看到B.pm而不是{{1 }}。

我在做什么错了?

1 个答案:

答案 0 :(得分:1)

这可能不是推荐的方法,但是对于那些寻求快速解决方案的人,只需将所有内容移动到lib目录中即可。

对我来说,它看起来像:

A-B
└── lib
    └── A
        ├── B
        │   ├── one.pm
        │   ├── three.pm
        │   └── two.pm
        └── B.pm

A-B目录中,我只需运行:

cpan .

由于我只想在本地安装模块,所以这种方法对我有用,但是如果您认为有充分的理由使用module-starter之类的工具(如@HåkonHægland所建议),或者至少编写自己的工具,请告诉我Makefile.PL(实际上是我想要列出依赖项时使用的方法)。