1
在互聯網上是否有任何地方,是在JVM字節碼(或類格式)規格改變多年來的事情的清單?變化的Java二進制類格式規範
比如我知道有一堆的,因爲類文件版本49.0和51.0加到類的新屬性。並且自從49.0以來,ldc*
指令支持更多參數。是否有完整的此類更改列表?
在互聯網上是否有任何地方,是在JVM字節碼(或類格式)規格改變多年來的事情的清單?變化的Java二進制類格式規範
比如我知道有一堆的,因爲類文件版本49.0和51.0加到類的新屬性。並且自從49.0以來,ldc*
指令支持更多參數。是否有完整的此類更改列表?
您可以比較JVM規範不同的版本。
不幸的是,我不知道乾淨勾畫出所有的差異的任何地方,但你可以通過觀察周圍here拿個主意。對於版本1.5和1.6,更改以紅色突出顯示。
我想補充的主要事情是可選的屬性,以支持在Java語言中的新功能 - anotations,枚舉,內部類,泛型,等等。 51.0也加入了所有invokedynamic相關的東西。 50.0添加了在51.0中被強制使用的StackMapTable。另外,50.0刪除了jsr/ret指令。
IIRC ldc
可以加載從50.0開始的類常量和從51.0開始的MethodType常量