Вопрос-ответ

how to check the jdk version used to compile a .class file [duplicate]

как проверить версию jdk, используемую для компиляции файла .class [дубликат]

Возможно дублирование:

Инструмент для чтения и отображения версий Java .class


Я пытаюсь отладить


"Неверный номер версии в файле .class'


ошибка в java, есть ли способ проверить, какая версия у .class файлов?

Я использую JRE1.5.0_6, но у меня JDK версия 1.6.0_13.

Я компилирую с режимом совместимости, установленным на 1.5 в eclipse, который, как я думал, будет работать...

Переведено автоматически
Ответ 1

Вы ищете это в командной строке (для класса с именем MyClass):

В Unix / Linux:

javap -verbose MyClass | grep "major"

В Windows:

javap -verbose MyClass | findstr "major"

Вам нужна основная версия из результатов. Вот несколько примеров значений:



























































































Версия JavaОсновная версия
1.246
1.347
1.448
549
650
751
852
953
1054
1155
1256
1357
1458
1559
1660
1761
1862
1963
2064
2165

Ответ 2

Btw, the reason that you're having trouble is that the java compiler recognizes two version flags. There is -source 1.5, which assumes java 1.5 level source code, and -target 1.5, which will emit java 1.5 compatible class files. You'll probably want to use both of these switches, but you definitely need -target 1.5; try double checking that eclipse is doing the right thing.

Ответ 3

Free JarCheck tool here

Ответ 4

You can try jclasslib:

https://github.com/ingokegel/jclasslib

It's nice that it can associate itself with *.class extension.

2023-05-14 22:15 java