首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Log::Log4perl::Appender::File的Perl错误

使用Log::Log4perl::Appender::File的Perl错误
EN

Stack Overflow用户
提问于 2014-10-06 07:12:50
回答 1查看 410关注 0票数 1

我正试图在Perl的帮助下构建应用程序。应用程序由来自perl的Thread::PoolLog4Perl包组成。

当我排除包Thread::Pool日志时工作。但是,当我将它包括在内时,它会给我以下错误:

代码语言:javascript
复制
ERROR: can't load appenderclass 'Log::Log4perl::Appender::File'
Could not find file for 'Log::Log4perl::Appender::File' at C:/Perl/site/lib/load.pm line 214.

工作守则:

代码语言:javascript
复制
# use Thread::Pool;
use Log::Log4perl;

my $log_conf = 'LoggingConfiguration.conf';
Log::Log4perl::init($log_conf);
my $logger = Log::Log4perl->get_logger();
$logger->info(" Info Msg ");

但如果我删除评论

代码语言:javascript
复制
use Thread::Pool;

它给出了上述误差

发生这种情况的确切原因是什么?如何避免此错误?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-06 08:50:32

从一些搜索中可以看出,线程::池对use load实用程序的使用存在问题:

来自线程::池错误跟踪器

在perl 5.8.8下创建对象时,添加“use::池”会在项目被祝福时引发问题。具体来说,在许多情况下,通常返回值并被祝福的代码显示为null。从线程中移除“use”杂注::*修复了这个问题。

线程::在cpanratings上的池

这个模块确实很方便,但在我看来,它存在一些严重的问题。..。第二,该模块使用“use”,这会导致Log::Log4perl发生故障。那肯定是一只邪恶的黑臭虫。只是因为我在这个源文件中找到了捷克人的评论(source.html链接坏了),所以我花了几天的时间调试。

线程::Log4Perl在PerlMonks上的池问题 -未解决,但答案包括:

不要使用线程::池。这是辆马车。切换到线程::队列。(OP的响应:Thread::Queue持续存在的问题) 您也可以尝试线程::池::简单。我在这方面的运气比线程好::池。

所以大家的共识是要么尝试从线程::池中删除use load,要么使用不同的模块。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26211407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档