Eu vi essa lista dos principais números de versão do Java em outro post:
- Java 1.2 usa a versão principal 46
- Java 1.3 usa a versão principal 47
- Java 1.4 usa a versão principal 48
- Java 5 usa a versão principal 49
- Java 6 usa a versão principal 50
- Java 7 usa a versão principal 51
- Java 8 usa a versão principal 52
- Java 9 usa a versão principal 53
- Java 10 usa a versão principal 54
- Java 11 usa a versão principal 55
- Java 12 usa a versão principal 56
- Java 13 usa a versão principal 57
- Java 14 usa a versão principal 58
Referências:
https://blogs.oracle.com/darcy/entry/source_target_class_file_version https://en.wikipedia.org/wiki/Java_class_file#General_layout
javap -verbose MyClass
?Encontrei uma lista de versões do arquivo de classe Java na página da Wikipedia que descreve o formato do arquivo de classe:
http://en.wikipedia.org/wiki/Java_class_file#General_layout
No desvio de bytes 6 e 7, as versões são listadas com a qual Java VM elas correspondem.
fonte
Se você está tendo algum problema com o "compilador de erros do arquivo de classe", é possível resolver isso alterando o JRE do projeto para seu correspondente através do Eclipse.
Eu fiz isso e funcionou.
fonte
Se você tiver um arquivo de classe em
build/com/foo/Hello.class
, poderá verificar em qual versão java ele é compilado usando o comando:Exemplo de uso:
De acordo com a tabela no OP, a versão principal 57 significa que o arquivo de classe foi compilado no nível de bytecode do JDK 13
fonte