2

「.pm」ファイル拡張子なしで perl モジュールをロードできますか?

「dll」、「so」、「lib」などの他のファイル拡張子を持つ perl モジュールを使用できますか

perlで「pm」ファイルのみをパッケージ/モジュールとしてロードできる方法を知りたいだけです。

4

1 に答える 1

7

拡張子の有無にかかわらず、必要なファイルをロードできますrequire "file_name";。唯一の要件は、ファイルが構文的に有効な Perl であり、モジュールのロードが成功したことを示すために true 値を返すことです。

通常use Module;は基本的にショートカットのみ

BEGIN {
  require Module;
  Module->import();
}

および(モジュール名の周りにrequire Module;抜けがあることに注意してください!) は、にリストされているすべてのディレクトリを検索します。"...""Module.pm"@INC

つまり、 withrequire文字列は任意のファイルをロードし、inを検索します。requireBareword"Bareword.pm"@INC

于 2012-12-11T08:05:26.587 に答える