Ah, the directory is known from the beginning. That makes things easier. There's no need to unshift anything, since you can use lib(*).
#!/usr/bin/perl ## untested use warnings; use strict; my ($g_commonMount, $g_moduleDir); BEGIN { $g_commonMount = "/common_mount"; $g_moduleDir = "$g_commonMount/include"; } use lib $g_moduleDir; sub file_watcher { while (1) { sleep 10, next unless -d $g_moduleDir; use autouse 'foo' => qw/foo/; foo; } } file_watcher;
I'm not particularly proud of the BEGIN block but maybe there's another way to do it. Also, instead of autouse(*), you can use require.
(*) CPAN seems down now, so the links to the modules may be wrong, since they are core and I don't know if one can link to them in the same fashion as any other.
--
David Serrano
In reply to Re^3: use lib and use autouse 'module'
by Hue-Bond
in thread use lib and use autouse 'module'
by cvg2mco
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |