Я установил уровень совместимости компилятора Java в 1.6 в Eclipse.
Сотрудник запускал несколько двоичных файлов на машине, на которой работает только Java 6, и выполнение не выполнено для Unsupported major.minor version: 51
.
У нас нет (еще *) автоматизированной системы сборки /CI: задача Ant создает JAR из содержимого голого bin/
каталога, скомпилированного функцией рабочего пространства Eclipse Auto-build, а не (еще *!) С помощью javac. Я только запускаю JDK 7 на своей машине, у меня нет следов JDK 6.
Вопрос очень прост: влияет ли настройка уровня соответствия на версию выходных двоичных файлов или блокирует ли вы вас от использования типов/синтаксисов в новых режимах работы?
* Yet
мы над этим работаем
Как вы упомянули, вы составили код JDK 7, а ваш коллега запустил его с помощью двоичных файлов JAVA 6. И вот почему он/она получил сбой "Неподдерживаемая версия major.minor: 51".
Как заявил Jigar, установка уровня соответствия просто скажет eclipse, чтобы настроить предупреждение/предложение в соответствии с указанным JDK, но код будет фактически скомпилирован только с установленным JREs/JDK.
Установите JDK версию 6 и перейдите в preferences-> JAVA-> Установленные JREs → Добавить → выберите JDK 1.6 с вашего устройства. И очистите и создайте свой проект. Это скомпилирует ваш код, чтобы он мог работать на JRE 6.
Надеюсь, поможет.
уровень соответствия - для eclipse, чтобы понимать языковые особенности в компиляции/предупреждении/предлагая функции
Вам также необходимо установить
Установленная JRE для правильной версии JDK (примечание: JDK)
установленная JRE расположена по адресу:
предпочтение → Java → Установленная JRE