Perl 中默认LIB路径有如下几个地方可以存储:
- Perl -V 中@INC变量,这是编译时绑定的
- 系统环境变量PERL5LIB,如set PERL5LIB=D:/tmp
- 脚本中use lib 添加
所有的操作最后都是在系统变量@INC 中添加一个路径,按照先后顺序依次查找,默认的先后顺序是上边三类的倒序排列,看如下示例。
没有添加额外的路径的情况:(默认当前目录会添加到LIB路径中)
C:\>perl -V
@INC:
D:/Perl/site/lib
D:/Perl/lib
.
添加环境变量PERL5LIB:
C:\>set PERL5LIB=D:/Perl/Test
C:\>perl -V
%ENV:
PERL5LIB="D:/Perl/Test"
@INC:
D:/Perl/Test
D:/Perl/site/lib
D:/Perl/lib
.
使用use lib:
C:\>perl -MData::Dumper -e "use lib qw(D:/tmp); print Dumper \@INC"
$VAR1 = [
'D:/tmp',
'D:/Perl/Test',
'D:/Perl/site/lib',
'D:/Perl/lib',
'.'
];
C:\>perl -MData::Dumper -e "use lib qw(D:/tmp D:/tmp/del); print Dumper \@INC"
$VAR1 = [
'D:/tmp',
'D:/tmp/del',
'D:/Perl/Test',
'D:/Perl/site/lib',
'D:/Perl/lib',
'.'
];