我想在Tests派生的intellij中创建perl模块。我在一个新项目中创建了以下测试,如下所示
#!/usr/bin/perl
use strict;
use warnings;
use Test::More;
done_testing();
但是当我尝试运行测试(Shift + Alt + F10)时,它失败并显示以下错误
测试于10:51开始... C:/ Strawberry / perl / bin \ perl.exe C:/Strawberry/perl/bin/prove.bat -PPassEnv --formatter TAP :: Formatter :: Camelcade --merge --recurse --jobs 1 D:/ workspace /code/repo/Modules/ImageUtilities/ReaConverterTest.t 无法在C:/Strawberry/perl/bin/prove.bat第26行加载模块PassEnv。
流程结束,退出代码为2
但是当我从命令行运行测试时,效果很好
$ perl -w ReaConverterTest.t
1..0
我看到intellij perl插件(https://github.com/Camelcade/Perl5-IDEA/issues/1966)报告了一个问题,但已关闭。看起来它已在2019.1 Perl中修复,但我不知道为什么它对我失败。
关于如何解决此问题的任何想法?
PS:我正在使用Git-Bash运行Perl脚本,使用IntelliJ在Windows上安装了草莓Perl作为Perl解释器。
当我通过添加“ use PassEnv”运行脚本时,由于没有这样的模块而失败,从intellij搜索也导致“没有这样的模块”
perl -w ReaConverter.t
Can't locate PassEnv.pm in @INC (you may need to install the PassEnv module) (@INC contain
s: /usr/lib/perl5/site_perl /usr/share/perl5/site_perl /usr/lib/perl5/vendor_perl /usr/sha
re/perl5/vendor_perl /usr/lib/perl5/core_perl /usr/share/perl5/core_perl) at ReaConverter.
t line 6.
BEGIN failed--compilation aborted at ReaConverter.t line 6.
答案 0 :(得分:2)
由于使用了-PPassEnv
选项,prove
尝试加载App :: Prove :: Plugin :: PassEnv。尚未安装。只需安装模块。
注意:您要使用Strawberry Perl安装它,因此以下内容似乎是您首选外壳程序中的适当命令:
/c/Strawberry/perl/bin/cpanm App::Prove::Plugin::PassEnv