我走了
export PERL6LIB="/GitHub/perl6-Units/lib"然后
echo $PERL6LIB
/GitHub/perl6-Units/lib但是当我运行perl6 t/01-basic.t时
use v6;
use Test;
plan 3;
lives-ok {
use Units <m>;
ok @Units::UNITS.elems > 0;
ok (0m).defined;
}
done-testing;我还是有个错误
===SORRY!===
Could not find Units at line 8 in:
/Users/--me--/.perl6
/usr/local/Cellar/rakudo-star/2018.01/share/perl6/site
/usr/local/Cellar/rakudo-star/2018.01/share/perl6/vendor
/usr/local/Cellar/rakudo-star/2018.01/share/perl6
CompUnit::Repository::AbsolutePath<140707489084448>
CompUnit::Repository::NQP<140707463117264>
CompUnit::Repository::Perl5<140707463117304>在Perl 5中,我会使用print "@INC";查看在抛出错误之前搜索哪些路径。使用say flat $*REPO.repo-chain.map(*.loaded);不是在加载之前,就是在抛出异常之后。
任何帮助都将是非常感激的--或者是关于在~/.perl6中添加什么的提示,因为我也无法获得一个符号链接来工作。
发布于 2018-09-14 00:05:43
错误消息本身告诉您可用的库路径是什么。您无法打印它们,因为您期望在编译时错误之前发生运行时操作( say ) --您可以在编译时打印出$*REPO,但异常已经显示了您想要的内容。
$ PERL6LIB="/GitHub/perl6-Units/lib" perl6 -e 'BEGIN say $*REPO.repo-chain; use Foo;'
(file#/GitHub/perl6-Units/lib inst#/Users/ugexe/.perl6 inst#/Users/ugexe/.rakudobrew/moar-2018.08/install/share/perl6/site inst#/Users/ugexe/.rakudobrew/moar-2018.08/install/share/perl6/vendor inst#/Users/ugexe/.rakudobrew/moar-2018.08/install/share/perl6 ap# nqp# perl5#)
===SORRY!===
Could not find Foo at line 1 in:
/GitHub/perl6-Units/lib
/Users/ugexe/.perl6
/Users/ugexe/.rakudobrew/moar-2018.08/install/share/perl6/site
/Users/ugexe/.rakudobrew/moar-2018.08/install/share/perl6/vendor
/Users/ugexe/.rakudobrew/moar-2018.08/install/share/perl6
CompUnit::Repository::AbsolutePath<140337382425072>
CompUnit::Repository::NQP<140337350057496>
CompUnit::Repository::Perl5<140337350057536>您可以看到/GitHub/perl6-Units/lib显示在可用路径中,这与您的示例不同。我会问您的shell/env是否确实设置正确。
https://stackoverflow.com/questions/52301202
复制相似问题