You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Maven编译SLF4J代码报错:cannot find symbol问题求助

解决你的SLF4J编译问题

嘿,我一眼就揪出问题啦!你代码里的方法名拼写错了——这就是编译器报“找不到符号”的直接原因。

看你代码里的这一行:

Logger logger = LoggerFactory.getlogger(App.class);

SLF4J的LoggerFactory类里的正确方法名是getLogger(第二个字母是大写的G),你写成小写的g了,编译器自然找不到这个方法。

修正步骤:

  1. 修正方法名大小写:把getlogger改成getLogger,修正后的完整代码如下:
package org.first.FirstMaven;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class App {
    public static void main( String[] args ) {
        Logger logger = LoggerFactory.getLogger(App.class);
        logger.info("Hello World!");
    }
}
  1. 确认依赖正确性:你pom.xml里的slf4j-api依赖是没问题的,Maven已经下载了对应的jar包,这部分不用调整。
  2. 可选:添加SLF4J实现(运行时需要):编译通过后,运行程序时还需要一个SLF4J的具体实现(比如Log4j),否则会出现警告。可以在pom.xml里补充这个依赖:
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-log4j12</artifactId>
    <version>1.6.1</version>
    <scope>runtime</scope>
</dependency>

改完之后再执行mvn compile,应该就能顺利通过啦!

内容的提问来源于stack exchange,提问作者datrey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 07:09:53