尽管在@INC中,但找不到模块

时间:2012-02-09 04:58:00

标签: perl catalyst

Perl抱怨它找不到@INC中的模块。

Can't locate <module> in @INC (@INC contains etc.)

@INC设置正确,模块就在那里。这是一个在催化剂下运行的Web应用程序,它在其他安装中运行良好。这个服务器设置有点时髦。我已经检查了文件的权限,它们没问题。

关于它可能是什么的任何建议?

根据评论中的要求,添加更多信息:

在我的一个Catalyst控制器中,我“使用” - 在Catalyst应用程序外部的模块:Template :: Plugin :: I18n。我收到以下错误:

Can't locate Template::Plugin::I18n in @INC (@INC contains:  
  /webroot/www-dev/sonnet/lib    /usr/local/lib/perl5/5.12.4/BSDPAN
  /usr/local/lib/perl5/site_perl/5.12.4/mach /usr/local/lib/perl5/site_perl/5.12.4
  /usr/local/lib/perl5/5.12.4/mach /usr/local/lib/perl5/5.12.4 . /usr/local) at 
  /webroot/www-dev/sonnet/lib/Sonnet/Controller/Pubs.pm line 647.

该模块位于/webroot/www-dev/sonnet/lib/Template/Plugin/I18n.pm,其权限与应用程序的其余部分相同。

1 个答案:

答案 0 :(得分:0)

嗯,这很令人尴尬。我有一个流浪的“require”声明,它引用了包名!这导致了错误,即使声明也是不必要的。深夜编码太多了。抱歉分心。您的所有建议都非常感谢!