Вы загружаете разные файлы конфигурации для каждого приложения. Последняя команда cpan имеет переключатель -j
, чтобы сделать это:
$ cpan -j some/app/Config.pm -i Foo::Bar
Эта последняя функция пока не включена в CPAN.pm , поскольку она экспериментальная. Однако я использую его уже несколько месяцев как часть моей работы DPAN .
Если вам не нравится что-то из этого, вам просто нужно предоставить свой модуль CPAN::Config
для своего приложения, где-то, где Perl найдет его, прежде чем найдет вашу личную или общесистемную версию. Скопируйте свой текущий CPAN / Config.pm в каталог модулей приложения и убедитесь, что каталог находится сначала в @INC (возможно, с использованием переменной среды PERL5LIB
). CPAN.pm должен сначала найти это и использовать его. Он использует только первый найденный. Это удобно, когда конфигурация исправлена, хотя она немного гибкая, поскольку вы можете запускать код в модуле. Это конфигурация в виде кода Perl.
Если для вас этого недостаточно, вы можете переопределить CPAN::HandleConfig()
в своем приложении, чтобы CPAN.pm не загружал файлы. Затем вы сами устанавливаете значения. Это особенно удобно, когда у вас много логики приложения, чтобы определить некоторые значения конфигурации. Конфигурация CPAN.pm - это просто хэш %CPAN::Config
, поэтому вам просто нужно установить правильные значения для соответствующих ключей.
В любом случае вы, вероятно, захотите установить для конфигурации «connect_to_internet_ok» ложное значение и очистить свой «urllist», чтобы иметь только локальные минипаны.