从另一个目录导入Perl模块

时间:2012-03-04 00:53:21

标签: perl import module

我有以下文件结构:

|_controllers
| |___FooController.pm
|_models
| |___Foo.pm
|_utils
| |___BarUtils.pm
|_foobar.do

我想知道如何在文件之间导入模块,假设我想在FooControllers.pm上使用Foo.pm或在foobar.do上使用BarUtils.pm。当我将文件放在相同的目录上时,我就是

  

使用Foo;

但在这种情况下,我无法弄清楚如何去做。

1 个答案:

答案 0 :(得分:5)

您需要确保:

  • 父目录(包含controllers等的那个...)位于@INC

  • 然后将模块命名为:

    use controllers::FooController;
    use models::Foo;
    

可以在SO上找到其工作方式和原因的确切理由(以及@INC详细信息):