我试图将Perl Mojolicious项目从开发系统安装到临时系统上。在登台系统(Centos)上,测试查找配置文件的错误位置。也就是说,例如,
./Build test --test-files t/001_basic.t
错误
t / 001_basic.t .. 1 /?配置文件" /home/randall/git/Project/blib/project.json"缺少,也许你需要创建它?
在开发系统(Ubuntu)上,相同的Build test
命令正在读取父目录中的配置文件(即/home/randall/git/Project/project.json),这就是我想要的
我已经排除了工作目录可能的罪魁祸首,并重新perl Build.PL
,重新生成构建脚本。
我缺少什么会导致仅登台系统在blib目录中查找?
编辑:补充说dev是Ubuntu,升级是Centos,但我不希望这是一个因素
答案 0 :(得分:1)
一般来说,您无法对当前的工作目录做出假设。
use Cwd qw( abs_path );
use File::Basename qw( dirname );
use constant PROJ_DIR => dirname(abs_path(__FILE__)) . '/..';
my $config_qfn = PROJ_DIR.'/project.json';