我不知道为什么我无法访问子包:
mbzdb
:
#!/usr/bin/perl -w
use lib "./lib";
use MbzDb::Instance;
my $instance = new MbzDb::Instance();
$instance->startFromCommandLine();
lib/MbzDb/Instance.pm
:
#!/usr/bin/perl -w
package MbzDb::Instance;
use strict;
use warnings;
use Getopt::Long;
require Exporter;
our @ISA = qw(Exporter);
our @EXPORT = qw(new startFromCommandLine);
sub new {
my $class = shift;
return bless {}, $class;
}
sub startFromCommandLine {
my $self = shift;
}
如果我在lib/MbzDb.pm
导出中使用相同的代码可以正常工作。我究竟做错了什么?
给出的错误是:
无法通过 ./mbzdb 第 6 行的包“MbzDb::Instance”(也许您忘记加载“MbzDb::Instance”?)找到对象方法“new”。