Pregunta Lista de números de versión principal de formato de archivo de clase de Java?


Vi esta lista de números de versión principales para Java en otra publicación:

  • Java 1.2 usa la versión principal 46
  • Java 1.3 usa la versión principal 47
  • Java 1.4 usa la versión principal 48
  • Java 5 usa la versión principal 49
  • Java 6 usa la versión principal 50
  • Java 7 usa la versión principal 51
  • Java 8 usa la versión principal 52
  • Java 9 usa la versión principal 53
  • Java 10 usa la versión principal 54
  • Java 11 usa la versión principal 55

Referencias

https://blogs.oracle.com/darcy/entry/source_target_class_file_version https://en.wikipedia.org/wiki/Java_class_file#General_layout


76
2018-02-07 04:01


origen


Respuestas:


Estos provienen de la versión de clase. Si intenta cargar algo compilado para java 6 en un tiempo de ejecución Java 5 obtendrá el error, versión de clase incompatible, obtuvo 50, esperaba 49. O algo así.

Ver aquí en byte compensado 7 para más información.

Información adicional también se puede encontrar aquí.


30
2018-02-07 04:05



Encontré una lista de versiones de archivos de clase Java en la página de Wikipedia que describe el formato de archivo de clase:

http://en.wikipedia.org/wiki/Java_class_file#General_layout

En el desplazamiento de bytes 6 y 7, las versiones se enumeran con qué máquinas virtuales Java corresponden.


17
2017-11-16 20:16