Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java log4j.Logger与JDK 1.8的logging.Logger不兼容_Java_Logging_Java 8_Log4j - Fatal编程技术网

Java log4j.Logger与JDK 1.8的logging.Logger不兼容

Java log4j.Logger与JDK 1.8的logging.Logger不兼容,java,logging,java-8,log4j,Java,Logging,Java 8,Log4j,我的项目是用JDK1.5编译的。我使用一个接口java.sql.Driver,它实现了一个方法getParentLogger: import java.util.logging.Logger; ... public interface Driver { ... public Logger getParentLogger() throws SQLFeatureNotSupportedException; } 我的类MockDriver实现此接口: import org.apache.lo

我的项目是用JDK1.5编译的。我使用一个接口
java.sql.Driver
,它实现了一个方法
getParentLogger

import java.util.logging.Logger;
...
public interface Driver {
  ...
  public Logger getParentLogger() throws SQLFeatureNotSupportedException;
}
我的类
MockDriver
实现此接口:

import org.apache.log4j.Logger;
...
class MockDriver implements Driver {
...
   public Logger getParentLogger() {
       return LOGGER;
   }
}
就像这样,当我编译时它对我有效

但在我的项目中使用JDK 1.8时,我有一个错误:

error: MockDriver is not abstract and does not override abstract method 
getParentLogger() in Driver
error: getParentLogger() in MockDriver cannot implement getParentLogger() in 
Driver
return type org.apache.log4j.Logger is not compatible with 
java.util.logging.Logger

有什么想法吗?

用另一个logger@Stultuske但就像那样,它与JDK1.5一起工作!我现在不想更改它,显然java.sql.Driver接口在1.5和1.8Java版本之间进行了更改。有什么原因,为什么你不使用Mockito这样的框架来模拟对象?@Michal我开始这个项目工作了两天,我真的不知道。也许它已经存在,开发团队正在使用它。@youssef,所以不要升级到Java 1.8