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

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

Я только что установил Intellj и установил 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, но когда я перешел к компилятору project / properties / java, это не сработало.

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

А как насчет вашего файла eclipse.ini? Вы переопределили версию Java, которую следует использовать с Eclipse? Кроме того, возможно ли, что новый JDK, который вы установили, перезаписал ранее существующий каталог JDK?

Rann Lifshitz 05.05.2018 18:03

@RannLifshitz, мой путь сборки все еще связан с SE-9, не могли бы вы указать, как я могу проверить свой eclipse.ini для проверки? Я не думаю, что он переопределил предыдущий каталог

G Thorburn 05.05.2018 18:27

В настройках Eclipse какая JRE используется по умолчанию?

Jonathan Rosenne 05.05.2018 18:30
wiki.eclipse.org/Eclipse.ini
Rann Lifshitz 05.05.2018 18:36

Это была проблема с JRE по умолчанию. При загрузке Intellj и версии 10 он не обновлялся должным образом в Eclipse. Я решил это, удалив версию 10 SE и JDK и правильно обновив. Спасибо.

G Thorburn 05.05.2018 19:51
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
4
5
1 896
1

Ответы 1

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

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

Patches welcome, we currently do not have active WB developers.

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

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

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

Другие вопросы по теме