Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java jar文件中有多个log4j.xml_Java_Logging_Log4j - Fatal编程技术网

Java jar文件中有多个log4j.xml

Java jar文件中有多个log4j.xml,java,logging,log4j,Java,Logging,Log4j,我正在开发一个客户端api,其中我有一个特定的需求,需要将特定于客户端api的日志消息记录到一个单独的文件中,这非常简单:我创建了一个appender,并将appender与特定于我的包的记录器相关联 现在的问题是: 如果客户端应用程序有自己的log4j.xml,会发生什么?我的appender和logger将如何在该环境中工作?log4j初始化过程仅处理一个配置文件-因此该文件应包含所有应处于活动状态的日志配置。您可能必须为包含您的应用程序和客户端应用程序日志记录配置的客户端应用程序定义特定配

我正在开发一个客户端api,其中我有一个特定的需求,需要将特定于客户端api的日志消息记录到一个单独的文件中,这非常简单:我创建了一个appender,并将appender与特定于我的包的记录器相关联

现在的问题是:


如果客户端应用程序有自己的log4j.xml,会发生什么?我的appender和logger将如何在该环境中工作?

log4j初始化过程仅处理一个配置文件-因此该文件应包含所有应处于活动状态的日志配置。您可能必须为包含您的应用程序和客户端应用程序日志记录配置的客户端应用程序定义特定配置


必须将客户端应用程序配置为使用此文件进行初始化。这是通过设置中描述的
log4j.configuration
系统属性来完成的(假设您使用的是log4j 1)

他们需要将appender放在类路径上,然后在log4j.xml中引用它。@我只给他们一个包含log4j.xml的jar文件。如果jar文件在类路径中,那么xml也会在类路径中,对吗?如果我错了,请纠正我。而且要求客户不应该有任何负担/或需要知道我们是如何在内部进行日志记录的。请参阅回答末尾的我的编辑如果您不“拥有”日志记录,那么使用SLF4J可能是有意义的。这将允许您交付jar的人员使用他们想要的任何日志记录框架,我的问题是关于我编写的类,我希望日志打印在一个特定的文件中。。。