如何最好地使用目录可能偶尔更改的库?

时间:2010-07-31 11:07:28

标签: perl packages

我正在编写Perl脚本,当我有太多函数时,我通常将它们全部移动到一个库中(也适用于代码重用)。因此,我通常会创建一个包(例如my_lib.pm)并将use lib 'path/to/lib'; use my_lib;添加到我的脚本中。

我想知道是否可以跳过use lib 'path/to/lib';,因为我重组了目录层次结构,有时会给我带来麻烦,并让Perl在运行脚本的同一目录中查找包。

谢谢。

3 个答案:

答案 0 :(得分:1)

首先,我建议你 - “永远不要搞乱Core Perl及其库 - 永远不要把你的lib放在那里”。

如果您希望脚本查看当前目录,请使用如下:

require "mylibrary/functions.pm";

其中mylibrary是一个与调用者脚本存在相同路径的目录。

答案 1 :(得分:0)

我会把我的.pm文件放到一个目录中,这样你就可以使用来自Perl的ifps,无论它们的位置如何。

然后使用该目录的名称创建一个环境变量PERL5LIB。

答案 2 :(得分:-1)

你需要

use lib '.';