1

Perforce リポジトリから取得する必要がある Perl モジュールを含めるのに問題があります。を使用してPerforceからテキストを読み取って、モジュールを含めていますP4 print

Perforce に慣れていない人のために、これはコードのバージョン管理ツールです。マップされたドライブであるかのように、そのパスからファイルを直接読み取ることはできないため、このコマンドを実行する必要があります。

p4 printパスが特殊であり、コマンドのみが Perforce ワークスペースからファイルにアクセスできることをcat除いて、と同等です。p4

BEGIN {
  push @INC, (
    sub {
      open my $fh, "p4 print -q //sw/pvt/shashikanths/perl/mylib/ReadElf.pm |";
      return $fh;
    },
    sub {
      open my $fh1, "p4 print -q //sw/pvt/shashikanths/perl/mylib/SimpleLogger.pm |";
      return $fh1;
    },
  );
}

BEGIN {
  push @INC, sub {
    open my $fh2, "p4 print -q //sw/pvt/shashikanths/perl/mylib/Table.pm |";
    return $fh2;
  }
}

use ReadElf;
use SimpleLogger;
use Table;

常に最初のファイルのみReadElf.pmが含まれます。3 つのファイルすべてを 1 つのファイルに連結し、BEGIN各ファイルのブロックを個別に使用してみました。それらのどれも機能しません。

そのため、SimpleLogger からモジュールにアクセスしようとすると、未定義のサブルーチン エラーが発生します。

4

1 に答える 1