log4j:WARN No appenders could be found for logger问题

本文将idea场景下的使用。

  1. IDEA中,将配置文件命名为log4j.properties(该命名才会被自动加载), 并放到某个目录下(通常放到resources目录),并在resources上右键,找到Mark Directory as 选中Resources Root(如果时test目录中,就选中Test Resources Root)。

    • 跑src下的程序会使用resources下的配置文件
    • 跑test的会先从test resource里找,找不到去resources里找,再找不到抛异常
  2. 确定好文件结构,各文件夹的类型是否正确

  3. 将log4j.propeties文件放到resource文件夹下(main的就放到)

  1. 写完程序后一定要build,这样log4j.propeties才会被移到target下(这里才是能被成功使用的关键)

注意,如果第3步没有被成功copy到target下,也可手动复制进去

最终绝招,甚至可以 任意命名,在程序中人为指定配置文件目录:

scala 复制代码
import org.slf4j.LoggerFactory
import org.apache.log4j.PropertyConfigurator
val path="D:\\git\\mytest\\src\\test\\resources\\log4j-test.properties"
private val LOGGER = LoggerFactory.getLogger(this.getClass)
PropertyConfigurator.configure(path) //人为指定
相关推荐
卓码软件测评44 分钟前
第三方课题验收测试机构:【API测试工具Apifox使用指南】
功能测试·测试工具·单元测试·压力测试·可用性测试
兮动人1 天前
Java 单元测试中的 Mockito 使用详解与实战指南
java·开发语言·单元测试
安冬的码畜日常1 天前
【JUnit实战3_01】第一章:JUnit 起步
测试工具·junit·单元测试
程序员二黑1 天前
自动化测试入门:从零开始搭建你的第一个WebUI项目
单元测试·测试·ab测试
zhonghaoxincekj1 天前
晶体管的定义,晶体管测量参数和参数测量仪器
功能测试·单片机·学习·测试工具·单元测试·制造
川石课堂软件测试2 天前
自动化测试之 Cucumber 工具
数据库·功能测试·网络协议·测试工具·mysql·单元测试·prometheus
执剑、天涯2 天前
通过一个typescript的小游戏,使用单元测试实战(二)
javascript·typescript·单元测试
啊森要自信2 天前
【GUI自动化测试】Python 自动化测试框架 pytest 全面指南:基础语法、核心特性(参数化 / Fixture)及项目实操
开发语言·python·ui·单元测试·pytest
川石课堂软件测试3 天前
MySQL数据库之DBA命令
数据库·网络协议·mysql·http·单元测试·prometheus·dba
lifewange3 天前
幂等机制
功能测试·单元测试