提问者:小点点

在Windows 7上找不到File::Find Raku


我有一个非常简单的程序,它列出了给定目录中的所有. txt文件。这个程序在我的Mac上完美运行,它有Rakudo Star版本2019.03.1

use File::Find;

my $folder="../Documents";

.say for find dir => $folder, name => /'.txt' $/;

当我尝试在具有Raku 2020.12.1的Windows 7上运行相同的程序时,它给出了以下内容:

$ raku html-adder.rk

===SORRY!=== Error while compiling C:\Users\lars\raku/html-adder.rk

Could not find File::Find in:
    inst#C:\Users\lars\.raku
    inst#C:\Programs\rakudo-moar-2021.02.1\share\perl6\site
    inst#C:\Programs\rakudo-moar-2021.02.1\share\perl6\vendor
    inst#C:\Programs\rakudo-moar-2021.02.1\share\perl6\core
    ap#
    nqp#
    perl5#
at C:\Users\lars\raku/html-adder.rk:12

我已经将Raku更新到Raku 2021.02.1版本,并且再次出现相同的错误。我通过解压缩rakudo-moar-2021.02安装了它。1-01-win-x86_64-msvc.zip即不使用任何安装程序。至于Mac上的Raku,我不记得安装了File::Find模块,也不知道如何列出已安装的模块,即我没有检查File::Find是否安装在Mac或Windows 7上。

如何使此程序在Windows 7上运行?


共1个答案

匿名用户

File::Find没有内置在Raku中,也没有与Rakudo Star一起分发;据我所知,从来没有。

它是生态系统中的一个模块,您可以使用Zef安装(使用命令zef install File::Find)。

它也是一个非常短的库。如果您有兴趣在不添加依赖项的情况下修复脚本,您可能需要查看File::Find的源代码;它足够短,您可以轻松地自己实现相同的功能。