如何在lib Path中使用变量? [英] How do you use a variable in lib Path?
问题描述
我想在lib路径中使用$ var变量.
I would like to use the $var variable in lib path.
my $var = "/home/usr/bibfile;"
use lib "$var/lib/";
但是,当我这样做时,它会引发错误.
However when I do this it throws an error.
我想使用use lib "$var/lib/";
代替use lib "/home/usr/bibfile/lib/";
.
如何分配变量,以便可以在lib模块的设置中使用它?
How can I assign a variable, so that it can be used in the setting of lib modules?
推荐答案
变量在use lib
中可以正常工作,就像它们在任何字符串中一样.但是,由于所有use
指令都是在BEGIN
块中执行的,因此在您运行use
时,变量尚未进行初始化,因此也需要在BEGIN
块中放置初始化.
Variables work fine in use lib
, well, just like they do in any string. However, since all use
directives are executed in BEGIN
block, your variable will be not yet initialized at the moment you run use
, so you need to put initialization in BEGIN
block too.
my $var;
BEGIN { $var = "/home/usr/bibfile"; }
use lib "$var/lib/";
use Data::Dumper;
print Dumper \@INC;
赠予:
$VAR1 = [
'/home/usr/bibfile/lib/',
# ... more ...
];
这篇关于如何在lib Path中使用变量?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!