Perl - 从主脚本中的其他目录获取模块的绝对路径

Perl - get abs path to module from other directory in main script

我创建了一个简单的 perl 脚本,它分为 2 个文件 - main.plcontent.pm 主脚本放在Project目录下,content.pm(模块)放在Project/utils目录下。现在我想在 main.pl 中使用 content.pm 我做了这样的东西来使用这个模块:

use Cwd;
use lib Cwd::abs_path(getcwd()."/utils");
use utils::content;

但是如果我这样做,我会得到一个错误:

Cant locate utils/content.pm in 
@INC (you may need to install the utils::content module) 
@INC contains: /Perl/utils /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.24.1 ...) 
at ./main.pl line 10.

是否可以 运行 这个 main.pl 脚本使用 content.pm 而没有错误?也许我不应该使用 getcwd()(我认为它使用工作目录而不是 abs_path,但我不确定)?

我想你要找的是FindBin

具体来说:

use FindBin qw( );
use lib $FindBin::RealBin."/utils"; 
use content;