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) //人为指定
相关推荐
金銀銅鐵2 天前
浅解 JUnit 4 第十一篇:@Before 注解和 @After 注解如何发挥作用?
junit·单元测试
金銀銅鐵4 天前
浅解 JUnit 4 第十篇:方法上的 @Ignore 注解
junit·单元测试
阿狸猿6 天前
单元测试中静态测试、动态测试及白盒测试、回归测试实践
单元测试·软考
Max_uuc6 天前
【工程心法】从“在板盲调”到“云端验证”:嵌入式单元测试与 TDD 的工程化革命
单元测试·tdd
feathered-feathered7 天前
测试实战【用例设计】自己写的项目+功能测试(1)
java·服务器·后端·功能测试·jmeter·单元测试·压力测试
测试渣7 天前
持续集成中的自动化测试框架优化实战指南
python·ci/cd·单元测试·自动化·pytest
小二·7 天前
Go 语言系统编程与云原生开发实战(第18篇)
云原生·golang·log4j
minh_coo7 天前
Spring单元测试之反射利器:ReflectionTestUtils
java·后端·spring·单元测试·intellij-idea
cm_chenmin8 天前
Cursor最佳实践之二:提问技巧
数据库·log4j