私はこのperlスクリプトを持っています
#!/usr/bin/perl
use lib "/home/gdanko/test/perl";
use Main;
Plugins::Plug1::devices;
モジュール Main は次のようになります
package Main;
use lib "/home/gdanko/test/perl";
use Plugins::Plug1;
use DBI;
@ISA = ('Exporter');
@EXPORT = qw();
@EXPORT_OK = qw($dbh &load_devices);
our $dbh = DBI->connect("dbi:SQLite:dbname=/home/gdanko/test/mydb.db", "", "");
sub load_devices {
my $sth = $dbh->prepare("SELECT * FROM devices");
$sth->execute;
my $devices = $dbh->selectall_hashref($sth, "id");
return $devices;
}
1;
モジュール Plug1 は次のようになります。
package Plug1;
use lib "/home/gdanko/test/perl";
use Data::Dumper;
use Main qw(&load_devices);
@ISA = ('Exporter');
@EXPORT = ();
@EXPORT_OK = qw(&devices);
sub devices {
print "module plug1\n";
my $devices = Main::load_devices;
print Dumper(\$devices->{maguro});
}
1;
メイン スクリプトから Plugins::Plug::devices を実行すると、次のように返されます。
Main のメソッドと変数を Plug1 で使用できるようにするにはどうすればよいですか?