gpt4 book ai didi

perl - 如何动态获取模块的路径?

转载 作者:行者123 更新时间:2023-12-04 23:04:25 25 4
gpt4 key购买 nike

如果我有这样的东西:

在一些script.pl中:

#code here  
my $result = $class->foo();
# extra code here

在类的模块中:

package Test::A::Foo;  
use parent Test::A;

sub foo {
# code here
}

当我在模块中执行代码时,如何获取 Test::A::Foo 所在的确切文件路径?它不是工作目录,因为我正在运行 script.pl 并调用 $class->foo,那么我如何才能获得实际路径?

最佳答案

内置哈希 %INC 包含已使用 requiredo 加载的模块文件的解析路径

Test::A::Foopm 文件的位置在 $INC{'Test/A/Foo.pm'}

有点像

$INC{ (__PACKAGE__ =~ s|::|/|gr) . '.pm' }

应该做你需要的

关于perl - 如何动态获取模块的路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24409284/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com