我使用ProGuard将一些jar文件从类文件版本49.0升级到50.0。
因为预验证对于版本50.0是可选的,我想知道是否有办法检查类文件中是否确实包含StackMapTable属性。
(并不是我不相信ProGuard“[...]以下选项通过更新内部版本号并预先验证它们来将类文件升级到Java 6。”但我想学习如何验证StackMapTable的存在。)
答案 0 :(得分:3)
Javaasist支持查看堆栈映射表。
我遇到的另一个金块是java -XX:-FailOverToOldVerifier -Xverify:所有这些只应验证50+版本类文件中是否有SMT信息。但是,我没有试过,甚至不能告诉你它在输出上的样子。