java - 在非 Maven 项目中放置 log4j.xml 文件的位置

标签 java log4j

我的 log4j.xml 文件存储在项目目录中,但出现以下错误:

log4j:WARN No appenders could be found for logger (p1.Employee).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more 
info.

当我把它放在 bin 文件夹中时,一切正常。但我没有 checkin 代码存储库中的 bin 文件夹,因此我不想将其放在那里。

我也不想使用 DOMConfigurator.configure("log4j.xml")

以下是我的项目结构。

enter image description here

最佳答案

在普通的 Java 项目中,您可以将 log4j 配置文件(即 log4j.propertieslog4j.xml)放置在 resources 目录。资源目录应与 src 位于同一级别。把它放在这里,将允许log4j自动使用配置文件。

否则,您可以通过 VM 选项设置要使用的 log4j 配置文件,方法如下:

-Dlog4j.configuration=file:///path/to/log4j.xml 

就您而言,如果您想将其放在 TrailProject 项目目录中,您可以执行以下操作

-Dlog4j.configuration=file:///path/to/TrailProject/log4j.xml

关于java - 在非 Maven 项目中放置 log4j.xml 文件的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44701728/

相关文章:

java - jar 中找不到 Logback 属性资源

java - 反转二叉树的交替级别

java - 如何将当前客户端目录添加到日志文件名中?

java - 使用 MetaMessage getData() 和/或 MetaMessage 值从 java 中的 MIDI 文件中提取节奏?

java - 在同一个Java数组中调用扩展类函数

java - Log4 记录器滚动追加器

java - 创建 Log4j xml 日志文件

log4j 模式 %X 以及分配给它的属性

log4j - Spring集成中限制jsch的输出

Java JPA、Swing 和 Beans 绑定(bind) : Changes to a OneToMany collection in entity not immediately reflected in GUI