Я установил несколько модулей в свой Strawberry Perl, работающий в Windows XP, например:
- Regexp :: Common
- URI :: Find :: Schemeless
Эти библиотеки отлично работают в моем коде Perl с первого раза сразу после установки каждого модуля.
Проблема в том, что каждый последующий день, когда я запускаю свои скрипты, они не работают с ошибкой:
Не удается найти Regexp / Common.pm в @INC (@INC содержит: C: / клубничный / perl / lib C: / клубничный / perl / site / lib C: \ клубничный \ perl \ vendor \ lib.)
Я поместил все соответствующие пути в переменные среды в Windows: PERL5LIB и другие, такие как lib, которые были предложены в различных других ответах на stackoverflow и других сайтах, связанных с установками модулей. Сценарии продолжают отказывать, если я не использую следующий обходной путь, который я выяснил:
- Откройте окно «редактировать переменные среды» в Windows. («Мой компьютер» -> «Свойства» -> вкладка «Дополнительно» -> «Переменные среды»)
- Ничего не добавляя и не меняя, нажмите ОК.
- Повторно откройте все консоли Perl, которые уже были открыты, или откройте новое окно Perl.
- Теперь библиотеки все находят без проблем.
Кто-нибудь знает, почему это может происходить? Я подозреваю, что это может быть что-то конкретное, связанное с Windows / cmd или даже с настройкой среды Windows моей компании?
Мы будем благодарны за любые предложения, потому что это очень неприятная проблема!
set PERL5LIB=whatever
и т. Д. - person Joe Z   schedule 20.11.2013echo %PERL5LIB%
печатает при запуске в консоли Perl? - person cjm   schedule 20.11.2013