perl脚本包含脚本开头的所有模块名称。
前:
use strict;
use XML::Parser;
use XML::Simple;
use DBI;
use DBD::DB2::Constants;
use POSIX qw( strftime );
use Storable qw(dclone);
use Data::Dumper;
use Carp;
如何将所有模块名称保存在另一个文件中,并将该文件包含在主perl脚本中?
感谢。
答案 0 :(得分:7)
答案 1 :(得分:6)
创建自己的模块。但是,如果您在此模块中创建包,那么strftime
等将被导入另一个命名空间。你可以做litle hack来做这个smiple:
MyModules.pm:
use strict;
use XML::Parser;
use XML::Simple;
use DBI;
use DBD::DB2::Constants;
use POSIX qw( strftime );
use Storable qw(dclone);
use Data::Dumper;
use Carp;
请注意,此.pm中没有package
个关键字。你的剧本:
use MyModules;
将此.pm放在带脚本的相同目录中,或在运行时添加模块搜索路径:
use lib '/my_modules_dir/';
use MyModules;
建议不要使用执行和 require 命令,因为它们不会检查脚本启动时的语法。当然你可以将它们放入BEGIN区块,但我认为它很棘手,一般BEGIN{ require ..}
与use
UPD: ikegami 注意到当你从许多模块中使用它时它无法正常工作。无论问题启动者的信息(他想从主脚本中使用它),生病添加信息如何从许多模块中使用它,所以我的朋友可以感觉更好。添加到MyModules.pm的末尾:
delete $INC{'MyModules.pm'};
1;
答案 2 :(得分:3)
您可以查看Toolkit模块。