lombok的@Slf4j注解使用+常用注解

第一种

依赖

  • IDEA安装lombok插件
  • IDEA配置
    在这里插入图片描述
  • maven配置
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.16.20</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-simple</artifactId>
            <version>1.7.25</version>
        </dependency>

例子

package com.ydfind;

import lombok.extern.slf4j.Slf4j;

@Slf4j
public class MainApp {
    public static void main(String[] args) {
        log.info("HelloWorld");
    }
}

结果如下
在这里插入图片描述

第二种使用log4j

依赖

前面两点见上面。maven配置如下:

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.16.20</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.7.25</version>
        </dependency>

需要再idea的maven工程的resource目录下加入log4j.xml文件,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration PUBLIC "-//log4j/log4j Configuration//EN" "log4j.dtd">
<log4j:configuration>
    <appender name="myConsole" class="org.apache.log4j.ConsoleAppender">
        <param name="Threshold" value="DEBUG"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="[%d{HH:mm:ss:SSS}] [%p] - %l - %m%n"/>
        </layout>
    </appender>
    <root>
        <level value="DEBUG"/>
        <appender-ref ref="myConsole" />
    </root>
</log4j:configuration>

运行上面的MainApp.java

第三种slf4j + logback

…待续

其他注解

  • 类加@ToString(exclude={“body”,“css”}): 这样打印类时,默认body与css不进行打印;
### Lombok `@Slf4j` 注解不起作用的原因分析 当遇到Lombok的`@Slf4j`注解无法正常工作的情况时,通常有以下几个可能原因: - **缺少必要的依赖项**:为了使`@Slf4j`能够正常使用,除了Lombok本身的依赖外,还需要确保项目中有适当版本的日志框架支持库存在。例如,在Maven项目的`pom.xml`文件中应包含如下配置来引入SLF4J API以及对应的实现[^1]。 ```xml <dependencies> <!-- SLF4J API --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.36</version> </dependency> <!-- SLF4J Simple Implementation (or any other implementation you prefer) --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>1.7.36</version> </dependency> <!-- Lombok Dependency --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.34</version> </dependency> </dependencies> ``` - **IDE插件未安装或更新**:如果是在集成开发环境中(如IntelliJ IDEA或者Eclipse)遇到了此类问题,则可能是由于IDE本身缺乏对Lombok的支持所致。对于这种情况,建议确认已正确安装并启用了相应的Lombok插件,并保持其处于最新状态[^2][^3]。 - **编译器设置不当**:某些情况下,即使所有必需组件都已就绪,仍然可能出现日志记录功能失效的现象。这往往是因为Java编译参数缺失了 `-parameters` 或者 IDE内部编译选项未能正确识别到Lombok的存在。针对这类情形,请核查当前使用的构建工具链是否已经包含了这些必要条件[^4]。 通过以上措施调整后,大多数因`@Slf4j`引起的异常情况应该可以得到有效缓解甚至彻底解决。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值