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

使用TestNG时出现java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory错误

问题原因与解决方案

你的代码本身没有问题,报错是因为TestNG 7.0+版本依赖SLF4J日志框架,而你的项目中缺少这个必要的依赖包,导致JVM无法找到org.slf4j.LoggerFactory类。

解决步骤

根据你的项目构建方式,选择对应的方案:

1. Maven项目

在pom.xml的<dependencies>节点中添加以下依赖:

<!-- SLF4J核心API -->
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.36</version>
    <scope>test</scope>
</dependency>
<!-- SLF4J简单日志实现(适合测试场景) -->
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>1.7.36</version>
    <scope>test</scope>
</dependency>

执行mvn clean test刷新依赖后,重新运行测试即可。

2. Gradle项目

在build.gradle的dependencies块中添加:

testImplementation 'org.slf4j:slf4j-api:1.7.36'
testImplementation 'org.slf4j:slf4j-simple:1.7.36'

执行gradle clean test刷新依赖后运行测试。

3. 手动管理JAR包

  1. 下载对应版本的SLF4J JAR包:slf4j-api-1.7.36.jar和slf4j-simple-1.7.36.jar
  2. 将两个JAR包放到项目的lib目录下,在IDE中把它们添加到项目的classpath中
  3. 重新运行TestNG测试

注意:版本建议和你使用的TestNG 7.8.0匹配,1.7.x系列的SLF4J兼容TestNG 7.x版本。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 15:36:03