Это именно то, для чего предназначена local :: lib . По умолчанию use local::lib;
добавит ~/perl5
к пути поиска вашего модуля (@INC
), но вы можете легко сказать ему добавить другой каталог.
Если вы делаете это с фиксированным каталогом (а не с одним по отношению к вашему домашнему каталогу), то вы, вероятно, также хорошо справляетесь с use lib 'PATH'
.
Если это для кода, который будет запускаться только из командной строки, другим вариантом будет создание переменной среды PERL5LIB
, которая указывает на каталог вашего личного модуля. Это повлияет на весь Perl, запускаемый вашей учетной записью пользователя из командной строки, поэтому вам не нужно вообще изменять свой код Perl с помощью этого метода, но сложнее настроить его для кода не из командной строки (например, веб-скрипты ) и, если код будет выполняться несколькими пользователями, PERL5LIB
необходимо будет установить для всех них.
Я бы ни в коем случае не рекомендовал бы связываться с @INC
напрямую. Есть много простых способов сделать это в наши дни.