2012-04-04 63 views
-5

可能重复:
how to import multiple custom modules in our own perl script?如何在perl脚本中导入多个包?

我有一些包。我想一次导入它们。 现在,我在做什么样

use lib 'path to packages'; 

use package1; 

use package2; 

...... 

use packageN; 

这是工作的罚款。但我想用一个命令导入所有包。任何人都可以建议我一个最简单的方法来做到这一点?

+0

我不想为每个包使用'use'语句。告诉我一些好方法吗? – 2012-04-04 09:11:47

+1

这个设计目标背后的动机是什么? – DavidO 2012-04-04 09:16:23

+0

其实我测试的人。我正在创建一些子程序,我将在几乎所有的测试脚本中使用它们。所以我已经为每个子程序创建了包,但现在导入是问题所在? – 2012-04-04 09:27:28

回答

3

Audrey Tang在CPAN上有一个相对较新的模块,名为“use”,它将完全按照您的要求进行操作。从它的简介:

use use qw[ strict warnings methods invoker ];

它具有其他功能,包括指定选项,如进口清单的能力,所以阅读文档。但最低限度,只需将您自己的模块名称替换为我的示例代码中列举的模块名称即可。

更新:所以说清楚,我可以:首先,安装'使用'模块,我链接到这个答案的顶部。二,修改你在你的问题贴,这样它看起来像这样的代码:

use lib 'path to packages'; 
use use qw[ package1 package2 package3 package4 ..... ]; 
+0

我越来越迷惑,在我的模块中写什么以及在使用该模块的ny脚本中写什么? – 2012-04-04 09:58:34

+0

@ user970553看到我的'更新'。 – DavidO 2012-04-04 10:02:41

+0

你能否详细说明一下吗? – 2012-04-04 10:03:49

2

好吧,你可以做一个模块,它会为你。例如:

use v5.10; 

use strict; 
use warnings; 

use mro (); 
use feature(); 

sub import { 
    warnings->import(); 
    strict->import(); 
} 

1; 

现在,上面的模块不起作用,但你得到了要点。如果你想要一个这样的例子,请看the source code for Modern::Perl

如果你这样做,但你只需要写一行!

希望这会有所帮助!