我有一些包裹。我想一次全部导入。现在,我正在做
use lib 'path to packages';
use package1;
use package2;
......
use packageN;
哪个工作正常。但我想在一个命令中导入所有包。有人可以建议我一个最简单的方法吗?
我有一些包裹。我想一次全部导入。现在,我正在做
use lib 'path to packages';
use package1;
use package2;
......
use packageN;
哪个工作正常。但我想在一个命令中导入所有包。有人可以建议我一个最简单的方法吗?
Audrey Tang 在 CPAN 上有一个相对较新的模块,称为“使用”,它将完全按照您的要求进行。从它的简介:
use use qw[ strict warnings methods invoker ];
它还有其他功能,包括指定导入列表等选项的能力,因此请阅读文档。但至少,只需将您自己的模块名称替换为我的示例代码中列举的模块名称。
更新: 所以要尽可能清楚地说明它:首先,安装我在此答案顶部链接到的“使用”模块。其次,修改您在问题中发布的代码,使其如下所示:
use lib 'path to packages';
use use qw[ package1 package2 package3 package4 ..... ];
好吧,你可以制作一个为你做这件事的模块。例如:
use v5.10;
use strict;
use warnings;
use mro ();
use feature ();
sub import {
warnings->import();
strict->import();
}
1;
现在,上面的模块不起作用,但你明白了要点。如果您想要一个这样的工作示例,请查看Modern::Perl 的源代码。
如果你做这样的事情,你只需要写一行!
希望这可以帮助!