1

私は自分が間違っていることを知りませんでした。Perl スクリプトをデバッグすると、終了しました。scipr が終了する場所は、関数からの完全に通常のリターンです。

sub new {

    my $self = shift;
    $self = {};
    bless $self;

    #instance of  "base" class Features.pm
    $self->{"base"} = Features->new();

    my @features = ();
    $self->{"features"} = \@features;

    return $self; # <== here is script terminated
}

終了する直前に、Carpモジュールから関数longmess に移動します。これは巨大なプロジェクトであるため、ここではコードのプレビューのみを掲載します。通常のコードがどのように失敗するかを確認するだけです。

終了につながるモジュールをプロジェクトから「削除」し、このモジュールを個別に実行すると、問題ありません。したがって、エラーは別の場所になります。

ここに画像の説明を入力 (このエラーはコードのさまざまな場所で発生しましたが、returnコマンドでのみ発生しました) perl 5.16、Eclipse、Epic、および c:\Perl\site\lib\ にあるプロジェクトを使用しています

私を助けてください。ありがとうございました

編集

問題は、Eclipse でデバッグ モードでプログラムを実行した場合にのみ発生します。デバッグせずに実行すると

4

0 に答える 0