Какая версия Java необходима для JUnit 4.8

Я пытаюсь запустить тест JUnit с 1.5 JRE, но получить сообщение об ошибке:

java.lang.UnsupportedClassVersionError: Bad version number in .class file

Когда я переключаюсь на JRE 1.6 (на самом деле JDK, но это не должно иметь значения, правильно?) everythings хорошо работают.

Таким образом, вопросы:

  • Нам действительно нужен Java 6 для текущей версии JUnit?
  • какова новейшая версия JUnit, которая работает с Java 5?
8
задан Joachim Sauer 29 April 2010 в 13:38
поделиться

3 ответа

Выборочная проверка нескольких классов показывает, что файл jar JUnit 4.8.2 был скомпилирован с помощью java 5 или компилятора java 6 с установленной опцией -target так что он создает файлы классов, совместимые с java5.

Гораздо более вероятное объяснение состоит в том, что вы случайно скомпилировали тест, который хотели запустить, с помощью Java 6 JDK. Что:

javap -verbose -classpath YOUR_TOP_DIRECTORY com.yourname.YourTest

говорит в верхней части вывода для «основной версии»? Если там написано 50 , проблема в том, что вы скомпилировали свой тестовый класс только для java 6. Вам нужно либо использовать компилятор JDK 5, либо передать вашему компилятору параметр -target 1.5 .

7
ответ дан 5 December 2019 в 11:23
поделиться

В pom.xml Junit указано jdk 1.5. http://github.com/KentBeck/junit/blob/master/pom.xml

3
ответ дан 5 December 2019 в 11:23
поделиться

Текущий файл .jar для JUnit 4.8.2 был скомпилирован с / для Java 5 (номер версии класса 49.0).

Я помню, что ранняя версия была случайно собрана с Java 6 (и без ключа -target), но это была просто ошибка.

5
ответ дан 5 December 2019 в 11:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: