我有一个最初是为Java 1.4编写的项目,但我的Mac上只有Java 6,我无法安装Java 1.4.
通常,我会使用这样的一行来编译:
javac -source=1.4 -target=1.4 MyClass.java
Run Code Online (Sandbox Code Playgroud)
但是,MyClass.java实现了java.sql.ResultSet接口,它在Java 6中添加了几个新方法,因此我得到了如下编译错误:
MyClass is not abstract and does not override abstract method
updateNClob(java.lang.String,java.io.Reader) in java.sql.ResultSet
Run Code Online (Sandbox Code Playgroud)
我不能简单地实现缺少的方法,因为许多使用泛型,这在Java 1.4中是不可用的.
似乎解决方案是获取和编译Java 1.4 JAR.所以,我有几个问题:
javac我想使用1.4 JAR而不是Java 6 JAR?谢谢!
Java 6附带JDBC 4,它与以前版本的Java附带的JDBC不向后兼容.
我们有一个JDBC驱动程序,它必须同时支持Java 5和Java 6.如果我在驱动程序中实现新接口,它在Java 5中不起作用,因为接口也使用新类.所以我们有2个版本的驱动程序.有没有办法让Java 5和6都有一个jar?