Ошибка версии класса Eclipse
В eclipse 3.4 я пытаюсь провести несколько тестов производительности для большого продукта, одна из включенных библиотек - это vecmath.jar (пакет javax.vecmath) из проекта Java3D. Все работало нормально, и тогда, когда я пытался запустить его вчера, я получаю это исключение / ошибку вскоре после запуска:
java.lang.UnsupportedClassVersionError: javax/vecmath/Point2f (Unsupported major.minor version 49.0)
То, что я считаю, означает, что я пытаюсь загрузить файл класса java 1.5 в 1.4 jvm, который не поддерживается. Однако когда я пошел в файл класса, чтобы проверить это, я увидел это в средстве просмотра файлов классов eclipse:
Compiled from Point2f.java (version 1.2 : 46.0, super bit)
Таким образом, загрузчик классов говорит, что это версия 49.0, а файл класса - 46.0. Я попытался очистить и полностью перестроить проект, я подтвердил, что версия компилятора для проекта - 1.4, JRE - 1.4, а для конфигурации запуска выбрана 1.4 jvm. Я полностью застрял в этом, кто-нибудь есть какие-либо идеи, что может быть причиной этого?
Спасибо
=== РЕДАКТИРОВАТЬ ===
Оказывается, версия java3d, которая была несовместима с java 1.4.2, была установлена в C:\Program Files\java\j2re1.4.2_18\lib\ext. Я установил более новую версию Java3D, чтобы поиграться в java6, и я полагаю, что он установил libs во все мои JRE, даже те, которые были несовместимы.
4 ответа
Может ли быть еще один javax.vecmath.Point2f на вашем пути к классам?
Вы должны добавить
- "java_home: C: \ Program Files \ Java \ jdk1.6.0_16"
- "путь: C:\Program Files\Java\jdk1.6.0_16\bin;"
в ваши переменные среды!
Вы проверили:
Window
-> Preferences
-> Java
-> Compiler
-> Compiler Compliance Level
Чтобы увидеть, является ли это значение винт?