Java 使用idea编译5.2.7-RELEASE版本的spring源代码找不到log4j和slf4j包

Java 使用idea编译5.2.7-RELEASE版本的spring源代码找不到log4j和slf4j包,java,spring,gradle,Java,Spring,Gradle,我使用idea构建spring源代码工程项目,该项目已成功构建,如下图所示。 当我创建一个main方法并运行它时,它将包含以下错误 Information:2021/2/12 21:23 - Build completed with 49 errors and 0 warnings in 2 s 284 ms E:\idea_workspace\spring-framework-5.2.7.RELEASE\spring-jcl\src\main\java\org\apache\commons\

我使用idea构建spring源代码工程项目,该项目已成功构建,如下图所示。

当我创建一个main方法并运行它时,它将包含以下错误

Information:2021/2/12 21:23 - Build completed with 49 errors and 0 warnings in 2 s 284 ms
E:\idea_workspace\spring-framework-5.2.7.RELEASE\spring-jcl\src\main\java\org\apache\commons\logging\LogAdapter.java
Error:(22, 32) java: Package org.apache.logging.log4j does not exist
Error:(23, 32) java: Package org.apache.logging.log4j does not exist
Error:(24, 36) java: Package org.apache.logging.log4j.spi does not exist
Error:(25, 36) java: Package org.apache.logging.log4j.spi does not exist
Error:(26, 17) java: Package org.slf4j does not exist
Error:(27, 17) java: Package org.slf4j does not exist
Error:(28, 21) java: Package org.slf4j.spi does not exist
Error:(154, 38) java: Symbol not found
  Symbol:   class LoggerContext
  position: class org.apache.commons.logging.LogAdapter.Log4jLog
示例如下

令我不解的是,log4j软件包实际上存在于项目中,我不知道该怎么办。我已经重新编译了好几次,结果都是一样的,请帮我解决,谢谢
软件版本如下:

  • 弹簧:5.2.7-释放
  • java:1.8.0_161
  • 梯度:5.6.4
  • 想法:2020.1.1
主要是因为这个模块的日志依赖,但是我不知道该怎么办

只需在gradle文件(sl4fj和log4j)中添加所需的依赖项即可。当您使用SpringBoot时,有一个启动程序和许多依赖项,但当您只使用SpringDependency时,它可以要求另一个依赖项来完成它们的工作

compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: '${version}'
compile group: 'org.slf4j', name: 'slf4j-api', version: '${version}'

表面上它很简单,但实际上它是无法添加的。是我在构建源代码的过程中造成的。你遵循了吗?当你应该使用包装器的时候,为什么你要使用这样一个旧的独立版本的Gradle?这是spring5.2官方推荐的相应版本。你是对的-我有点惊讶,这么长时间以来一直使用这个版本(不过现在已经在6.8上了)。