почему Eclipse не использует компилятор, указанный для моего проекта? - PullRequest
1 голос
/ 31 марта 2010

Я использую Eclipse 3.3. В моем проекте я установил уровень соответствия компилятора на 5.0 в пути сборки для проекта. Я добавил Java 1.5 JDK в раздел «Установленные JRE» и ссылаюсь на эту системную библиотеку в пути сборки моего проекта. Тем не менее, я получаю ошибки компиляции для класса, который реализует PreparedStatement для не реализации абстрактных методов, которые существуют только в Java 1.6 PreparedStatement. В частности, методы

setAsciiStream(int, InputStream, long) and 
setAsciiStream(int, InputStream)

Как ни странно, он работал, когда мы компилировали его для Java 1.4, для которой он изначально был написан. Мы добавили JRE для Java 1.4 и обратились к этой системной библиотеке в проекте, установили уровень компилятора проекта на 1.4, и он работает нормально. Но когда я делаю те же изменения, чтобы попытаться указать на Java 5.0, он вместо этого использует Java 6.

Есть идеи почему?

Я уже писал подобный вопрос здесь:

как мне заставить eclipse использовать другую версию компилятора для Java?

Я знаю, как вы должны выбрать другой компилятор, но, похоже, Eclipse его не использует. Похоже, что по умолчанию Java 6, хотя я удалил все JDK и JRE Java 6, которые я мог найти. Я также обновил параметр -vm в моем eclipse.ini, чтобы он указывал на Java5 JDK.

1 Ответ

2 голосов
/ 31 марта 2010

Речь идет не о компиляторе, а только о библиотеке! Перейдите в свойства проекта, затем в разделе «Путь / библиотеки Java Build» удалите системную библиотеку JRE. Затем используйте Добавить библиотеку ..., чтобы добавить нужную версию библиотеки JRE.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...