如何使用JDK 1.6编译与JDBC 3.0兼容的源代码?

问题描述:

我需要用1.6 JDK(包含JDBC 4.0)编译一个为JDBC 3.0编写的旧库。这是不可能的,因为更新的JDBC接口包含Blob和Clob相关的方法,所以实现它们的类不能编译。在图书馆中实施新方法不是一种选择。如何使用JDK 1.6编译与JDBC 3.0兼容的源代码?

这可以用JDK 1.6来完成,还是我需要安装1.5 JDK?

你并不需要安装JDK1.5,但是你需要Java 5 rt.jar并指定编译器的引导类路径:

javac -source 1.5 -target 1.5 -bootclasspath /path/to/jre5/lib/rt.jar 

否则,你将用的Java6 rt.jar将其编译包含JDBC 4接口,然后编译器会抱怨未实现的方法。使用已编译的JDBC 3.0库将在Java 6下正常工作,直到JDBC 4中添加的方法被调用。