Понадобилось декомпилировать в Java для изучения class-файлы Java. Все это усложняется тем, что они генерировались компилятором Scala 2.7.7 под JDK 1.6.0_16, при этом у компилятора еще и оптимизация включена. Не самая легкая работа для декомпилятора.
Нашел несколько утилит, но результат плохой.
JAD. CMD. Классика, фактически. Сайта уже нет, но последнюю версию нашел. Оно декомпилирует, но кое на чем ломает зубы. На удивление, тяжко берет обработку исключений (блоки try, catch, finally).
JNODE. GUI. Странноватый интерфейс (требует подключения через указание classpath). Большую часть классов не взял, пишет Verification error. Т.е. старье.
Mocha. CMD. Ругается на "xxxx is not a valid Java .class file". Старый.
DJ Java Decompiler. GUI. Просит денег. Морда над jad, результаты аналогичные.
JD GUI. GUI. Декомпилирует, но ошибается, не видит классы с именем $, пропускает куски кода (конструкторы, например).
Jasmine as a patch of Mocha. Похоже морда для Mocha. Не запустился
HBD. На с++, лень собирать.
JDEC. GUI, CMD. Не запустился.
Soot/Dava. Пока не запустился. но надо посмотреть повнимательнее.
JReversePro. CMD. кривовато запускается jreversepro.parser.ClassParserException : (Major: 49, Minor: 0) version not supported. Т.е. старье.
class Cracker. Сайта уже нет.
JADO Java Decompiler. Не работает.
Jasmine Decompiler. Сайта уже тоже нет
SourceAgain. Не пробовал, просит денег, видимо старье
Jascii. Сайта уже нет.
bytecoding. Не смотрел, по виду старье.
javad. Тоже старье, похоже.
Может еще что-то есть, но сходу не нашел. Как видно, кроме JAD ничего приличного и не появилось.
UPD (2018 год): в результате до сих пор использую CFR - another java decompiler. Мои задачи выполняет, регулярно обновляется.
Search in the blog:
2009-12-09
Subscribe to:
Post Comments (Atom)
Blog Archive
-
▼
2009
(360)
-
▼
December
(48)
- IDEA: "find usages"
- Symmetrical AWD
- HTC Hero (Android 1.5): GSM/3G Modem
- T-max EW-6500 серии Outback (но пока не работает)
- 3G MTS: Irkutsk
- LockRight 1510: Небольшие тесты на бездорожье
- HTC Hero (Android 1.5): Bluetooth
- Тропки
- HTC Hero (Android 1.5): Wi-fi, Bluetooth
- HTC Hero (Android 1.5)
- IntelliJ IDEA Community Edition (plugins)
- Мошенники
- Samsung NX10
- HTC Hero (заставка при включении)
- Nokia E61, HTC Hero, Nokia 5800
- 3G Иркутск
- Иркутск и мороз
- BWC - CDMA 1x. "Абсолютный" и "Безлимитный"
- HTC Hero - прошивка
- Форумы: вещи, которые раздражают посетителей
- Suzuki Jimny и правка кастора после небольшого лифта
- LockRight 1510: первые впечатления после установки
- LockRight 1510 (в задний мост Jimny)
- Ошибка на миллиард долларов
- IDEA 9
- Jimny рама
- Иркутск. Мост
- IDEA
- Java декомпилятор
- Honda CR-Z
- Subaru Forester
- Информационные таблицы
- IntelliJ IDEA Community Edition
- Утилизация
- KMPlayer 2.9.4.1435
- Fan[tom]
- Tunatic
- Tire marker
- Scala и ничего
- GPS и фото
- RVR
- Лада - нам не нада
- Pentax K-x
- Билайн
- Пружины
- ZOI4 нападает
- УАЗ-31512: моё мнение
- Dremel 402 куплен
-
▼
December
(48)
Есть удобный онлайн декомпилятор Java: http://decompiler.com/
ReplyDeleteВсё работает онлайн без скачиваний и установок.