spring-cloud导入eclipse时,@slf4j注解为什么找不到log变量

本文介绍Lomboz插件的功能及安装方法。Lomboz是Eclipse的J2EE插件,支持JSP、EJB等开发,并提供编码、测试、部署等功能。文章详细说明了从下载jar包到配置eclipse.ini的具体步骤。

原因是缺少插件Lomboz。

Lomboz是一个基于LGPL的开源J2EE综合开发环境的Eclipse插件,对编码,发布,测试,以及debug等各个软件开发的生命周期提供支持,支持JSP,EJB等。Lomboz是Eclipse的一个J2EE的插件,它将很多Java应用服务器、J2EE组件和Web应用开发集成到Eclipse中,可以帮助Java开发者使用Eclipse建立、测试、部署J2EE应用。

安装Lombo方法:

1. https://projectlombok.org/download.html 下载jar包

    1. 将 lombok.jar 复制到 myeclipse.ini / eclipse.ini /sts.ini所在的文件夹目录下
    2. 打开 eclipse.ini / myeclipse.ini/sts.ini,在最后面插入以下两行并保存:
        -Xbootclasspath/a:lombok.jar
        -javaagent:lombok.jar
    3.重启 eclipse / myeclipse/STS

 

常用的 lombok 注解:
        @Data   :注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法
        @Setter:注解在属性上;为属性提供 setting 方法
        @Getter:注解在属性上;为属性提供 getting 方法
        @Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象
        @NoArgsConstructor:注解在类上;为类提供一个无参的构造方法

        @AllArgsConstructor:注解在类上;为类提供一个全参的构造方法

转载自:http://www.cnblogs.com/davidwang456/p/6435165.html

This XML file does not appear to have any style information associated with it. The document tree is shown below. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.linmour</groupId> <artifactId>linmour-ScanOrder</artifactId> <packaging>pom</packaging> <version>${revision}</version> <modules> <module>linmour-common-module</module> <module>linmour-system-module</module> <module>linmour-gateway</module> <module>linmour-product-module</module> <module>linmour-security</module> <module>linmour-order-module</module> <module>linmour-restaurant-module</module> <module>linmour-websocket</module> <module>linmour-dataAnaly-module</module> </modules> <!-- 继承Spring boot工程 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.9.RELEASE</version> </parent> <properties> <!-- 项目版本 --> <revision>1.2.8.0.1</revision> <!-- 项目源码及编译输出的编码 --> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <!-- 项目编译JDK版本 --> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> <!-- 依赖包版本管理 --> <security.version>2.3.9.RELEASE</security.version> <validator.version>6.1.5.Final</validator.version> <spring.boot.version>2.3.9.RELEASE</spring.boot.version> <commons.io.version>2.6</commons.io.version> <commons.codec.version>1.12</commons.codec.version> <lombok.version>1.18.16</lombok.version> <mysql.version>5.1.49</mysql.version> <mybatis.version>3.5.1</mybatis.version> <rediss.version>3.16.8</rediss.version> <mpj.version>1.4.11</mpj.version> <mybatis.spring.version>2.0.1</mybatis.spring.version> <mybatis.plus.version>3.4.1</mybatis.plus.version> <lang3.version>3.5</lang3.version> <pagehelper.version>1.2.3</pagehelper.version> <jwt.version>0.9.1</jwt.version> <fastjson.version>1.2.58</fastjson.version> <fastjson.dataformat.version>2.9.9</fastjson.dataformat.version> <spring.jwt.version>1.0.9.RELEASE</spring.jwt.version> <spring.boot.admin.version>2.1.6</spring.boot.admin.version> <spring.cloud.version>Hoxton.SR8</spring.cloud.version> <curator.version>4.2.0</curator.version> <hanlp.version>portable-1.3.4</hanlp.version> <fastdfs.version>1.26.5</fastdfs.version> <baidu.version>4.11.1</baidu.version> <junit.version>4.12</junit.version> <searchbox.version>6.3.1</searchbox.version> <elasticsearch.version>7.2.0</elasticsearch.version> <ali.core.version>4.1.1</ali.core.version> <ali.green.version>3.4.1</ali.green.version> <kafka.version>2.6.6</kafka.version> <kafka.client.version>2.5.1</kafka.client.version> <reflections.version>0.9.11</reflections.version> <swagger.version>2.9.2</swagger.version> <knife4j.version>2.0.2</knife4j.version> <com.alibaba.cloud>2.2.3.RELEASE</com.alibaba.cloud> <xxl.job.version>2.2.0-SNAPSHOT</xxl.job.version> <captcha-plus.version>1.0.2</captcha-plus.version> <mapstruct.version>1.5.5.Final</mapstruct.version> <jsoup.version>1.15.4</jsoup.version> <lombok.version>1.18.26</lombok.version> <mapstruct.version>1.5.5.Final</mapstruct.version> <hutool.version>5.8.18</hutool.version> <easyexcel.verion>3.3.1</easyexcel.verion> <velocity.version>2.3</velocity.version> <screw.version>1.0.5</screw.version> <fastjson.version>1.2.83</fastjson.version> <guice.version>5.1.0</guice.version> <transmittable-thread-local.version>2.14.2</transmittable-thread-local.version> <commons-net.version>3.8.0</commons-net.version> <jsch.version>0.1.55</jsch.version> <tika-core.version>2.7.0</tika-core.version> <netty-all.version>4.1.90.Final</netty-all.version> <ip2region.version>2.7.0</ip2region.version> <reflections.version>0.10.2</reflections.version> <minio.version>7.1.0</minio.version> <tess4j.version>4.1.1</tess4j.version> <jaxb.version>2.3.0</jaxb.version> <maven-plugin.version>2.7.8</maven-plugin.version> <!-- docker 配置 --> <dockerfil.version>1.4.13</dockerfil.version> </properties> <dependencyManagement> <dependencies> <!-- 子模块 --> <dependency> <groupId>com.linmour</groupId> <artifactId>linmour-security</artifactId> <version>${revision}</version> </dependency> <dependency> <groupId>com.linmour</groupId> <artifactId>linmour-system-api</artifactId> <version>${revision}</version> </dependency> <dependency> <groupId>com.linmour</groupId> <artifactId>linmour-common</artifactId> <version>${revision}</version> </dependency> <dependency> <groupId>com.linmour</groupId> <artifactId>linmour-common-api</artifactId> <version>${revision}</version> </dependency> <dependency> <groupId>com.linmour</groupId> <artifactId>linmour-order-api</artifactId> <version>${revision}</version> </dependency> <dependency> <groupId>com.linmour</groupId> <artifactId>linmour-product-api</artifactId> <version>${revision}</version> </dependency> <dependency> <groupId>com.linmour</groupId> <artifactId>linmour-restaurant-api</artifactId> <version>${revision}</version> </dependency> <dependency> <groupId>com.linmour</groupId> <artifactId>linmour-dataAnaly-api</artifactId> <version>${revision}</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-typehandlers-jsr310</artifactId> <version>1.0.1</version> </dependency> <!-- 日志处理包 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-log4j2</artifactId> </dependency> <!-- lombok --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>${lombok.version}</version> </dependency> <dependency> <groupId>org.redisson</groupId> <artifactId>redisson-spring-boot-starter</artifactId> <version>${rediss.version}</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>${maven-plugin.version}</version> </dependency> <dependency> <groupId>org.reflections</groupId> <artifactId>reflections</artifactId> <version>${reflections.version}</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <!-- 排除默认的logback日志,使用log4j --> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> </exclusions> <version>${spring.boot.version}</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> </exclusions> <version>${spring.boot.version}</version> </dependency> <!-- Apache 工具包包 --> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>${commons.io.version}</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>${lang3.version}</version> </dependency> <!-- 加密处理包 --> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>${commons.codec.version}</version> </dependency> <!-- Mysql 数据库 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql.version}</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis.version}</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>${mybatis.spring.version}</version> </dependency> <!-- jwt --> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt</artifactId> <version>${jwt.version}</version> </dependency> <!-- fastjson --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>${fastjson.version}</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-cbor</artifactId> <version>${fastjson.dataformat.version}</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-xml</artifactId> <version>${fastjson.dataformat.version}</version> </dependency> <!-- spring colud --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring.cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> <!-- spring cloud alibaba --> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies</artifactId> <version>${com.alibaba.cloud}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> <version>${security.version}</version> </dependency> <dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct</artifactId> <!-- use mapstruct-jdk8 for Java 8 or higher --> <version>${mapstruct.version}</version> </dependency> <dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-jdk8</artifactId> <version>${mapstruct.version}</version> </dependency> <dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-processor</artifactId> <version>${mapstruct.version}</version> </dependency> <!-- junit --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>${junit.version}</version> </dependency> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>${mybatis.plus.version}</version> </dependency> <dependency> <groupId>net.sourceforge.tess4j</groupId> <artifactId>tess4j</artifactId> <version>${tess4j.version}</version> </dependency> <dependency> <groupId>io.minio</groupId> <artifactId>minio</artifactId> <version>${minio.version}</version> </dependency> <dependency> <groupId>org.springframework.kafka</groupId> <artifactId>spring-kafka</artifactId> <version>${kafka.version}</version> </dependency> <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> <version>${kafka.client.version}</version> </dependency> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>${hutool.version}</version> </dependency> <dependency> <groupId>com.github.yulichang</groupId> <artifactId>mybatis-plus-join-boot-starter</artifactId> <version>${mpj.version}</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>transmittable-thread-local</artifactId> <version>${transmittable-thread-local.version}</version> </dependency> <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>2.3.1</version> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> <version>${jaxb.version}</version> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-core</artifactId> <version>${jaxb.version}</version> </dependency> <dependency> <groupId>javax.activation</groupId> <artifactId>activation</artifactId> <version>1.1.1</version> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.7.0</version> <configuration> <source>${java.version}</source> <target>${java.version}</target> </configuration> </plugin> </plugins> <resources> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.*</include> </includes> <filtering>true</filtering> </resource> </resources> <testResources> <testResource> <directory>src/system.test/resources</directory> <filtering>true</filtering> </testResource> </testResources> <pluginManagement> <plugins> <!-- 构建和推动Docker镜像 --> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin</artifactId> <version>${dockerfil.version}</version> <executions> <execution> <id>default</id> <!-- 用package打包才触发构建镜像 --> <phase>package</phase> <goals> <goal>build</goal> <!-- 推送到仓库 --> <!-- <goal>push</goal> --> </goals> </execution> </executions> <configuration> <contextDirectory>${project.basedir}</contextDirectory> <useMavenSettingsForAuth>true</useMavenSettingsForAuth> <repository>${project.artifactId}</repository> <!-- 推送到仓库 --> <!-- <username>root</username> --> <!-- <password>@Cheng128</password> --> <tag>${project.version}</tag> <buildArgs> <JAR_FILE>${project.build.finalName}.jar</JAR_FILE> </buildArgs> </configuration> </plugin> <!-- install打包占位符不替换可以使用这个插件,也可以用package打包 --> <!-- <plugin> --> <!-- <groupId>org.codehaus.mojo</groupId> --> <!-- <artifactId>flatten-maven-plugin</artifactId> --> <!-- <version>1.5.0</version> --> <!-- <configuration> --> <!-- <!– 避免IDE将 .flattened-pom.xml自动识别为功能模块 –> --> <!-- <flattenedPomFilename>pom-xml-flattened</flattenedPomFilename> --> <!-- <updatePomFile>true</updatePomFile> --> <!-- <flattenMode>resolveCiFriendliesOnly</flattenMode> --> <!-- </configuration> --> <!-- <executions> --> <!-- <execution> --> <!-- <id>flatten</id> --> <!-- <phase>process-resources</phase> --> <!-- <goals> --> <!-- <goal>flatten</goal> --> <!-- </goals> --> <!-- </execution> --> <!-- <execution> --> <!-- <id>flatten-clean</id> --> <!-- <phase>clean</phase> --> <!-- <goals> --> <!-- <goal>clean</goal> --> <!-- </goals> --> <!-- </execution> --> <!-- </executions> --> <!-- </plugin> --> </plugins> </pluginManagement> </build> <repositories> <repository> <id>spring</id> <url>https://maven.aliyun.com/repository/spring</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> </project> 这个项目我如果想用源码运行怎么做
06-25
<think> 首先,用户的问题是:“项目里大量报关于@Slf4j注解的java: 不到符号 符号: 变量 log 错误”。这看起来是关于Java项目中@Slf4j注解的错误。 我需要理解问题:用户在使用@Slf4j注解,编译器报告不到符号“log”。@Slf4j是Lombok库中的一个注解,用于自动生成日志记录器(如log对象)。这个错误通常意味着Lombok没有正确配置或集成到项目中。 我的回答应该: - 解释问题原因。 - 提供解决方案。 - 使用中文回答。 - 在回答末尾提出3-5个相关问题。 - 第一行必须是“§§相关问题§§”,然后列出问题。 - 相关问题必须基于用户的问题和我的回答。 关键步骤: 1. **回答问题**:用中文解释错误原因和解决方法。 - 原因:Lombok没有正确安装或IDE没有启用Lombok插件。 - 解决方法: - 确保项目中包含Lombok依赖(例如在Maven或Gradle中)。 - 配置IDE以支持Lombok(例如在IntelliJ IDEA中安装Lombok插件并启用注解处理)。 - 可能需要重新编译项目或重启IDE。 2. **提出相关问题**:基于我的回答,想出3-5个相关问题。 - 例子: - 1. 如何在Maven项目中添加Lombok依赖? - 2. 在IntelliJ IDEA中如何启用Lombok插件? - 3. 除了@Slf4j,Lombok还有哪些常用注解- 4. 为什么在IDE中需要额外配置Lombok? - 5. 如何验证Lombok是否成功安装? 确保格式: - 回答结束,直接输出“§§相关问题§§”在第一行。 - 然后列出相关问题,编号或不编号都可以,但从示例看是编号的(1. ··· 2. ···)。 - 禁止换行分散,意思是相关问题不要换行太多,保持紧凑。 完整回答结构: - 先回答用户问题。 - 然后: §§相关问题§§ 1. ... 2. ... 3. ... 用中文回答: - 用户指定“使用中文回答问题”,所以整个回答用中文。 最终回答草稿: - 解释:这个错误通常是由于Lombok库未正确配置导致的。@Slf4j注解是Lombok提供的,用于自动创建log实例。如果IDE或构建工具没有正确处理Lombok,就会出现“不到符号log”的错误。 - 解决方案: - 检查项目的构建文件(例如pom.xml或build.gradle)是否包含Lombok依赖。 - 在IDE中安装Lombok插件(如IntelliJ IDEA的Lombok插件)。 - 启用注解处理。 - 重新构建项目或重启IDE。 - 相关问题: 1. 如何在Maven项目中添加Lombok依赖? 2. 在IntelliJ IDEA中如何配置Lombok插件? 3. @Slf4j注解的工作原理是什么? 4. 如果添加了依赖但还是报错,应该检查什么? 5. Lombok还提供了哪些其他有用的注解? 确保有3-5个问题。 </think> 这个错误通常发生在使用 Lombok 的 `@Slf4j` 注解,表明 Java 编译器无法识别 `log` 变量。这是因为: - **原因**:Lombok 是一个代码生成库,`@Slf4j` 会自动创建 `private static final Logger log = ...` 实例。如果项目未正确配置 Lombok(如依赖缺失或 IDE 插件未启用),编译器就无法生成 `log` 符号。 - **解决方案**: 1. **添加 Lombok 依赖**:在项目的构建文件中添加依赖(例如 Maven 的 `pom.xml`): ```xml <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.30</version> <!-- 使用最新版本 --> <scope>provided</scope> </dependency> ``` 或 Gradle 的 `build.gradle`: ```groovy dependencies { compileOnly 'org.projectlombok:lombok:1.18.30' annotationProcessor 'org.projectlombok:lombok:1.18.30' } ``` 2. **配置 IDE**: - 在 IntelliJ IDEA 中:安装 "Lombok" 插件(通过 `Settings > Plugins` 搜索安装),然后启用注解处理(`Settings > Build, Execution, Deployment > Compiler > Annotation Processors > Enable annotation processing`)。 -Eclipse 中:安装 Lombok jar(双击下载的 jar 文件运行安装程序),并重启 IDE。 3. **重新构建项目**:运行构建命令(如 `mvn clean install` 或 `gradle build`),并重启 IDE 以应用更改。 4. **检查环境**:确保 Java 版本兼容(Lombok 支持 Java 8+),并移除任何冲突的日志库(如多个 SLF4J 实现)。 如果错误持续,检查 IDE 的控制台输出,看是否有 Lombok 相关的警告信息。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值