Openjdk 1.7 в eclipse: оператор не разрешен для уровня источника ниже 1.7

Eclipse дает мне ошибку:

'<>' operator is not allowed for source level below 1.7 

Я думаю, это потому, что он не использует java 1.7. Кроме того, что это так. По крайней мере openjdk 1.7 (моя ОС - OpenSuse 12.3).

Я переключился с кеплера на juno, чтобы уменьшить некоторые задержки, и попытаюсь выяснить эту ошибку, но пока ничего не получилось.

Некоторые вещи, которые я пробовал: - стандартная среда выполнения для eclipse - это opensdk 1.7 (говорит об этом в справочной информации, о деталях установки) - свойства проекта, java build → library. Я вручную добавил местоположение opensdk.

Я бы установил версию oracle, но доступно только 1.6 из репозитория opensuse. Я уже пытался установить rpm, предлагаемый oracle, который не попал мне на мой путь и не испортил все, поэтому я снова удалил это.

Он должен работать с openjdk, а нет? Или вы думаете, что у него есть ошибка?

ps: junit также не был распознан, поэтому я вручную связался с файлом jar. Возможно, это релевантная информация.

Ответ 1

В настройках вашего проекта вы должны установить опцию --source для компилятора 1.7 и --target на 1.7. Для этого есть специальные поля.

Щелкните правой кнопкой мыши проект. Выберите "Свойства". Выберите Java Compiler слева. Выберите 1.7 для уровня соответствия компилятора. Если два раскрывающихся списка ниже 1.7, снимите флажок Использовать параметры соответствия по умолчанию и установите их на 1.7.

Ответ 2

щелкните правой кнопкой мыши на ошибке, выберите быстрое исправление и выберите изменение JRE на 1.7

Ответ 3

Если вы хотите использовать нижеприведенную версию, используйте

Map<String, Integer> map = new HashMap<String, Integer>();

вместо

HashMap<String, Integer> map = new HashMap<>();

Ответ 4

щелкните правой кнопкой мыши Project - properties - Java Complier - Соответствие компилятора - уровень уровня 1.7

Ответ 5

Если вы хотите придерживаться java 1.6, найдите и замените < > пустой строкой. Вы получите предупреждения компилятора, но ошибки должны исчезнуть.

Ответ 6

У меня была та же проблема, но с  - Уровень соответствия компилятора  - Совместимость файлов .class  - Совместимость источников все уже установлены на 1.7. Я переустановил 1.7 на всех 3, а затем Eclipse обнаружил его, попросил восстановить и успешно построить мой проект.

Ответ 7

Окно- > Настройки- > Java- > Компилятор

выберите 1.7 и нажмите ОК.

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

Ответ 8

Щелкните правой кнопкой мыши проект. Выберите "Свойства". Выберите Java Compiler слева. Выберите 1.7 для уровня соответствия компилятора. Если два раскрывающихся списка ниже 1.7, снимите флажок Использовать параметры соблюдения по умолчанию и установите их на 1.7.