如何让 eclipse 为 Java 使用不同的编译器版本?
看起来这应该是一个简单的任务,在“首选项”菜单中为不同的JRE提供选项,并且能够为每个项目设置不同的编译器和构建路径。但是,它似乎也根本不起作用。
例如,我将java 1.6的JAVA_HOME设置为jre。我仍然不清楚Eclipse是如何使用它的,但它似乎默认了这一点,而不是接受项目覆盖。我还安装了Java 1.5,并在Java->Installed JREs部分的eclipse中为此添加了一个JRE。
在我的项目中,我将编译器合规性级别设置为 1.5。在项目的构建路径中,我为 Java 1.5 JRE 添加了系统库。但是,我收到一个实现ReadyStatement的类的编译错误,因为没有实现仅存在于Java 1.6 PreparedStatement中的抽象方法。具体来说,方法
setAsciiStream(int, InputStream, long) and
setAsciiStream(int, InputStream)
奇怪的是,当我们针对Java 1.4编译它时,它的工作原理,它最初是为Java 1.4编写的。我们添加了 Java 1.4 的 JRE,并在项目中引用了该系统库,并将项目的编译器级别设置为 1.4,并且工作正常。但是当我做同样的更改来尝试指向Java 1.5时,它使用1.6。
任何想法为什么?