У меня есть куча скриптов, что мне нужно, чтобы запустить их в последовательном порядке Somthing как нижеДобавление модулей каталогов в @INC
foreach my (qw (script1.pl script2.pl script3.pl){
my $script=File::Spec->catfile($Bin,'Scripts',$_);
system "$^X $script";
}
каждый из этих сценариев использования 2 модулей, расположенных под Lib библиотеки, где скрипты найдено
У меня есть библиотека проектов, которые соответствуют приведенному выше сценарию и 2 директориям для моих модулей, а другая для скриптов, выполняемых вышеприведенным скриптом, вопрос, как добавить каталог модулей в путь @INC в динамическом в приведенном выше сценарии, что при запуске системного кода он найдет каталог lib по пути @INC. Я попытался использовать следующие:
BEGIN{
use lib File::Spec->catdir($Bin,'LIB');
}
но его идеи не работают?
Я получаю ошибку для каждого сценария на петле
"BEGIN failed--compilation aborted at C:\Porject\Scripts\script1.pl line 4
Can't locate Detection.pm in @INC"
Предоставьте полное сообщение об ошибке и полный путь к модулю, который вы пытаетесь загрузить. (Вы можете заменить личную информацию, если вам нужно, просто быть последовательным. Например, повсеместно заменяйте название вашей компании на «xxx» и ваше имя пользователя «yyy».) – ikegami
Is Detection.pm в «Porject \ LIB»? – DVK
Да, если я распечатаю файл :: Spec-> catdir ($ Bin, 'LIB'), я вижу, что он в правом каталоге – smith