はじめに
perl使っていてホント恥ずかしいところでエラったので自分戒めメモ
概要
perlを実行したらこんな感じで表示される
# perl class.pl Class.pm did not return a true value at class.pl line 2. BEGIN failed--compilation aborted at class.pl line 2.
ファイルの中身とか
ファイルの内容はこんなん Class.pm
package Class;
sub foo {
my $self = shift;
# any
print 'i am Class.pm';
}
class.pl
use lib '/home/hoge/test_perl'; use Class; Class->foo();
原因
原因はこういうこと
requireやuseされたファイルは、正常にコンパイルされ、初期化コードを正しく実行したことを示すために、真を返さなければならない。
※自分は文章がつたないのでこちら引用させて頂きました!
→perlメモ
Class.pmを修正
Class.pm
package Class;
sub foo {
my $self = shift;
# any
print 'i am Class.pm';
}
1;
最後の1;を入れただけですが、これで初期化コードを正しく実行したことを示す真の値(1)を返しました
はぁ、、、動かないわけないと思ってると変なところで躓きますね(--;