首页 > 解决方案 > 在 Windows 7 上找不到 File::Find Raku

问题描述

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

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.zipie而不使用任何安装程序来安装它。至于 Mac 上的 Raku,我不记得安装了File::Find模块,也不知道如何列出已安装的模块,即我没有检查是否File::Find安装在 Mac 或 Windows 7 上。

如何让这个程序在 Windows 7 上运行?

标签: modulerakurakudo

解决方案


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

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

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


推荐阅读