JDisasm

From unkrig.de
Revision as of 10:02, 23 June 2019 by Aunkrig (talk | contribs)
Jump to navigation Jump to search

A disassembler for Java .class files.

Currently supports .class files up to and including version 8.

The project home page is here.

Change Log

Version 1.0.5 (not yet released)
  • ...
Version 1.0.4
  • Implemented the "StackMapTable" attribute.
  • Fixed one NPE.
  • Signature parsing choked on signatures like "com/sun/xml/ws/server/StatefulInstanceResolver.1CookieSniffer" ("1" after ".").
  • CheckStyle clean-up with cs-contrib 1.2.19: Now not only the "{" of method declarations must be aligned, but also the "}".
  • Implemented command line option "--stack-map".
  • Issue #58: Integer overflow in ClassFile reader
Version 1.0.3
  • (unclear)
Version 1.0.2
  • Added support for the method_info's "MethodParameters" attribute.
  • "-src" now accepts a _path_ instead of a single _directory_.
  • Implemented the "StackMapTable" attribute.:* Opcodes "[adfil](load|store)_[0123]" are no longer printed as "[adfil](load|store)" (without the "implicit local variable index" suffix), but with their full mnemonic.
  • Added test cases.
  • Refactoring: Switched from a map that maps opcodes to "Instruction"s to one big SWITCH statement.
  • Java 8 fix: The operand of INVOKESPECIAL and INVOKESTATIC can now be an InterfaceMethodref, not only a Methodref.
Version 1.0.1
  • Remove our "own" implementation of Nullable, NotNull and NotNullByDefault, and added a dependency on"de.unkrig.commons-nullanalysis" instead.
  • MAIN class definition was missing from JAR manifest.
  • Slightly clarified the wording of the license: Replaced "author" with "copyright holder and its contributors".
Version 1.0.0, 2016-10-30
(-)