JDBC不兼容错误

时间:2014-04-29 18:55:20

标签: java jdbc ant java-7 java-6

我有一个用旧版java编写的遗留代码。我正在尝试编译代码并使用ant生成.ear文件。我正在使用的java版本是jdk7 / jdk6作为java home。 在执行ant脚本时,我收到以下错误

Compiling 20 source files to C:\views\kroger\kroger\of_platform\build\oneforce\classes\ra
warning: [options] bootstrap class path not set in conjunction with -source 1.4
C:\views\kroger\kroger\of_platform\sdk\src\java\ra\com\workscape\connector\wedb\
JdbcConnectionImpl.java:81: error: JdbcConnectionImpl is not abstract and does not     override abstract method getNetworkTimeout() in Connection

public class JdbcConnectionImpl implements JdbcConnection {

C:\views\kroger\kroger\of_platform\sdk\src\java\ra\com\workscape\connector\wedb\
JdbcDataSource.java:78: error: JdbcDataSource is not abstract and does not override abstract method getParentLogger() in CommonDataSource

public class JdbcDataSource

我假设这个错误是因为某些jar不兼容较新的jdk版本。 当我使用jdk1.4 / 1.5时这很好用。请让我知道如果我需要采用任何最新版本的jar ..使用的数据库是oracle,我使用ojdbc14来编译数据库java代码。

这很重要,因为我们必须决定我们需要使用哪个版本的java。

由于

1 个答案:

答案 0 :(得分:8)

Java 1.7在CommonDataSource&中引入了一些新方法。 Connection接口。您看到错误的是:

getParentLogger()

getNetworkTimeout()

另外,请记住,Java 1.7中的新方法比上述两种方法更多。

如果您想使用Java 1.7,那么您的自定义类JdbcConnectionImpl& JdbcDataSource(或它们的超类)应该实现Connection&所定义的新方法。分别为CommonDataSource