私は2つのモジュールを持っています:
./My/Module1
./My/Module2
Module1
のサブルーチンを使用していModule2
ます。だから私のスクリプトでは、次のように入力しました:
use My::Module1
use My::Module2
しかし、これは機能せず、perl はModule2
byで使用されるサブルーチンModule1
が存在しないと文句を言いました。だから私は次の行をに追加しましたModule1
:
use My::Module2
最後に、これは期待どおりに機能しました。
指定されたサブディレクトリ ツリーのすべてのモジュールを含め、依存関係を自動的に解決するソリューションがあるかどうか疑問に思っています。use
別のモジュールに依存するモジュールにキーワードを入力したくありません。次のコマンドが試行されましたが、機能しませんでした (構文エラーまたは間違ったモジュールを使用したため)。
use My::;
use My::*;
use My;
また、モジュールを相互に使用し、そのサブルーチンを呼び出すことは、perl プログラミングの良い実践と見なされるかどうかを尋ねたいと思いますか?
PS:@INC
現在のディレクトリが含まれているため、モジュールのロードが機能しています。
PPS: 使用モジュールExporter