log4j:ERROR “org.apache.log4j.ConsoleAppender” 对象不可分配给 “org.apache.log4j.Appender” 变量

2022-09-03 02:02:38

我正在使用 gradle 制作一个 Web 应用程序。我在这个应用程序中使用了log4j。当我构建项目时,我收到错误...

  • log4j:ERROR “org.apache.log4j.ConsoleAppender” 对象不能分配给 “org.apache.log4j.Appender” 变量。
  • log4j:ERROR 类 “org.apache.log4j.Appender” 由
  • log4j:ERROR [org.powermock.core.classloader.MockClassLoader@16a40b2] 而对象类型
  • log4j:ERROR “org.apache.log4j.ConsoleAppender” 由 [sun.misc.Launcher$AppClassLoader@5e3a78ad] 加载。
  • log4j:错误 无法实例化名为“stdout”的追加器。

我仍然没有找到一个好的答案。我忘了说,我的项目正确构建并正确显示日志按摩。它不仅仅适用于测试类。


答案 1

添加此注释对我有用。

@PowerMockIgnore("org.apache.log4j.*") 

答案 2

您的类路径包含 2 个 log4j 库的副本。请排除一个,然后重试。