黑马程序员JAVA-LogBack无法输出日志文件解决办法

文章讲述了在Java项目中使用LogBack时遇到的问题,主要涉及到logback.xml文件的位置问题和配置调整。作者发现将logback.xml直接放在src目录而非子目录下解决了日志输出问题,但不解为何原本放在src/xml下的配置仍能生效。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 最终解决办法

将logback.xml直接放在src目录下

磊哥放置的位置:

.../src/xml/logback.xml

实际应该放置的位置:

​.../src/logback.xml

成功生成.log文件!

具体问题和分析见后续内容。

2. 分析

2.1 Bug: 无法输出日志

根据黑马Java P173里的内容,磊哥将logback.xml文件放在src/xml目录下。运行代码后,发现.log文件不存在,但是控制台有输出,说明执行过程没有问题,问应该出在LogBack上。

2.2 分析问题

我考虑了两种可能性:

  1. 我下载的jar包的版本与logback.xml文件格式需要的版本不一致
  2. logback没有配置好

可能性1:因为logback.xml文件中,没有声明版本信息,且配置信息都是很基本的内容,暂时排除这个原因。

可能性2:由于jar包都是官网下载的,出问题可能性不大;但是logback.xml文件是自己写的(copy来的),很可能这中间出了问题。结果还真是这个原因!!

2.3 问题来源

根据黑马Java P174的内容,发现在修改logback.xml中关于日志输出的配置信息后,控制台的输出没有变化,推断是logback.xml文件没有生效。

    <!--
        1、控制日志的输出情况:如,开启日志,取消日志
    -->
    <root level="debug">
        <appender-ref ref="CONSOLE"/>
        <appender-ref ref="FILE" />
    </root>

修改输出日志等级,将"debug"改位"info",或者去掉在控制台输出这个选项时,控制台输出的内容没有变化,推断是我们的java代码没有和logback.xml联系起来,尝试将logback.xml直接放到src的目录下(不是子目录下),就解决了这个问题。

至于磊哥将logback.xml文件放在src/xml文件夹下,还能生效,我就不知道为什么了,请大家指教!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值