in reply to Re: 'use' falls out of scope at runtime
in thread 'use' falls out of scope at runtime

no, it falls out... the module is not available.

Thu Apr 23 14:20:57 2009 error client xxxx Undefined subroutine &plugin23::test called at ..

the only way to keep it in enviroment is to trigger the function calling 'use' for each run
  • Comment on Re^2: 'use' falls out of scope at runtime

Replies are listed 'Best First'.
Re^3: 'use' falls out of scope at runtime
by shmem (Chancellor) on Apr 23, 2009 at 19:32 UTC

    use called a second time doesn't reload the module, since it checks %INC (see perlvar) and, if the module is already in that hash, the underlying require just returns 1, so no loading. You would have to undef $INC{$module} for the use to reload the module. Keep in mind that in %INC the key for Some::Module is Some/Module.pm.

    Aa Corion said, you could use Apache::Reload for those packages; if you have changing packages where methods/functions are organized into files, you could use AutoReloader.