Как бороться с «Несовместимыми версиями Java с 0» в Eclipse Window Builder?

У меня установлен Eclipse с WindowsBuilder, и в прошлом он отлично работал, показывая вкладку дизайна JFrame.

Я только что установил Intelj и установил JDK в дополнение к моей текущей JVM SE-9. Моя программа eclipse все еще работает, но когда я открываю дизайн WindowsBuilder, отображается следующее:

Incompatible Java versions: Eclipse is running under 0, but this Java project has a 
9 Java compliance level, so WindowBuilder will not be able to load classes from this 
project. Use a lower level of Java for the project, or run Eclipse 
using a newer Java version

До нуля должно быть что-то, а не 1,8 или 9.

Другие ответы StackExchange предполагают, что я понизил версию Java, но когда я перешел к компилятору проекта/свойств/java, это не сработало.

Мой компилятор Java связан с SE-9, поэтому я не уверен, почему возникает эта новая ошибка. Может быть, это связано с установкой JDK?


person G Thorburn    schedule 05.05.2018    source источник
comment
Как насчет вашего файла eclipse.ini? Вы переопределили версию Java, которую следует использовать с Eclipse? Кроме того, возможно ли, что новый установленный вами JDK перезаписал ранее существовавший каталог JDK?   -  person Rann Lifshitz    schedule 05.05.2018
comment
@RannLifshitz мой путь сборки все еще связан с SE-9, не могли бы вы указать, как я могу проверить свой eclipse.ini для проверки? Я не думаю, что он переопределил предыдущий каталог   -  person G Thorburn    schedule 05.05.2018
comment
В настройках Eclipse какой JRE по умолчанию?   -  person Jonathan Rosenne    schedule 05.05.2018
comment
wiki.eclipse.org/Eclipse.ini   -  person Rann Lifshitz    schedule 05.05.2018
comment
Это была проблема с JRE по умолчанию. При загрузке Intelj и загрузке версии 10 он не обновлялся должным образом в Eclipse. Я решил это, удалив версию 10 SE и JDK и правильно обновив их. Спасибо.   -  person G Thorburn    schedule 05.05.2018


Ответы (1)


Это известная ошибка при обнаружении строк версии Java в Window Builder. Исторически синтаксический анализ строк версии был реализован так, чтобы не проверять основную часть версии в позиции индекса 0, например 9.0 или 10.0, а в индексе 2, а именно 1.6, 1.7,...

К сожалению, на сегодняшний день в отчете об ошибке 517291 мы находим следующее:

Приветствуются исправления, в настоящее время у нас нет активных разработчиков WB.

поэтому кто-то должен внести свой вклад в исправление этого нежелательного поведения, которое причиняет вам боль.

Так что на данный момент вы должны использовать версии Java меньше или равные 1.8, если вы хотите использовать Window Builder в Eclipse. Для справки см. этот ответ от greg-449 или этот ответ на эту тему.

Надеюсь, это поможет (пока).

person MWiesner    schedule 10.05.2018