Exposing my ignorance, wanting help with use!
Spiros Denaxas
spiros at lokku.com
Wed Feb 14 14:48:01 GMT 2007
Not entirely sure, but might it be a problem with file permissions?
on my box:
ls /Library/Perl/5.8.6/File/Slurp.pm
-r-xr-xr-x 1 root admin 19K Feb 17 2006 /Library/Perl/5.8.6/File/Slurp.pm
Try setting +x.
Spiros
On 2/14/07, Peter Hickman <peter.hickman at semantico.com> wrote:
> Unfortunately my fount of all things Perl is away today and as I look
> around the office I see that I am surrounded by Java programmers. So no
> help there, I'll just have to expose my ignorance to the whole world.
>
> I have this little project I am working on that involves the following code:
>
> my %handlers = $t->get_handlers();
>
> foreach my $handler ( keys %handlers ) {
> my $class = $handlers{$handler}{class};
> my $config = $handlers{$handler}{config};
> eval {
> require $class;
> $self->{dispatcher}->add_dispatcher( $handler,
> $class->new($config) );
> };
>
> die "Error loading dispatcher '$class': $@\n" if $@;
> }
>
> The problem is the require in the eval. When it is called with class set
> to, say, Stupid::Dispatcher::XSQL I get the following error:
>
> Error loading dispatcher 'Stupid::Dispatcher::XSQL': Can't locate
> Stupid::Dispatcher::XSQL in @INC (@INC contains: /sw/lib/perl5
> /sw/lib/perl5/darwin
> /System/Library/Perl/5.8.6/darwin-thread-multi-2level
> /System/Library/Perl/5.8.6
> /Library/Perl/5.8.6/darwin-thread-multi-2level /Library/Perl/5.8.6
> /Library/Perl /Network/Library/Perl/5.8.6/darwin-thread-multi-2level
> /Network/Library/Perl/5.8.6 /Network/Library/Perl
> /System/Library/Perl/Extras/5.8.6/darwin-thread-multi-2level
> /System/Library/Perl/Extras/5.8.6
> /Library/Perl/5.8.1/darwin-thread-multi-2level /Library/Perl/5.8.1 .) at
> /Library/Perl/5.8.6/Stupid/Control.pm line 35.
>
> Here's the rub, the file is located at:
>
> [stupid]$ ll /Library/Perl/5.8.6/Stupid/Dispatcher/XSQL.pm
> -r--r--r-- 1 root admin 1520 Feb 14 13:50
> /Library/Perl/5.8.6/Stupid/Dispatcher/XSQL.pm
> [stupid]$
>
> Which you can see is in @INC. I can -M the file and even perl -e
> 'require Stupid::Dispatcher::XSQL; print 1;' the damn thing but the
> above code will not work. Even sticking a use Stupid::Dispatcher::XSQL
> in the code does not help.
>
> Help. I do not understand what is going on.
>
> --
> Peter Hickman.
>
> Semantico, Lees House, 21-23 Dyke Road, Brighton BN1 3FE
> t: 01273 722222
> f: 01273 723232
> e: peter.hickman at semantico.com
> w: www.semantico.com
>
>
More information about the london.pm
mailing list