Читай RSS - будь умным! Мы в Twitter! Мы VKontakte! Главная Форум Услуги Рекламодателям Карта сайта Контакты
Авторизация
Вход через
социальные сети
Вход через сайт
Регистрация
Забыли пароль?

l2maxi - всё для lineage 2
l2maxi - всё для lineage 2: ява сервера, дополнения, программы, галерея, улучшения, клиенты, файлы, боты, баги.

  Java Decompiler


Java Decompiler

Декомпиляция — процесс воссоздания исходного кода декомпилятором
Недавно я задался вопросом: Какой декомпилятор лучше?
Начал мучить Google, экспериментировать. В итоге нашел отличное решение. Как декомпильнуть любую программу и получить рабочие «исходники»? Об этом в сабже.

Краткий обзор популярных декомпиляторов

Mocha

Mocha (автор — Hanpeter van Vliet)— это, вероятно, один из первых выпущенных декомпиляторов Java. Предоставляет консольный пользовательский интерфейс. Его релиз состоялся в 1996-ом году, ещё до того, как появился Java Development Kit версии 1.1

JAva Decompiler

JAva Decompiler, JAD (автор — Pavel Kouznetsov) — по всей видимости, самый
популярный декомпилятор Java. Как и Mocha, этот декомпилятор предоставляет консольный интерфейс, давно не обновляется и не поддерживается, но большое число графических инструментов для работы с ним, в том числе плагин JadClipse для среды разработки Eclipse, делают его и по сей день используемым в качестве подручного средства для декомпиляции небольших классов.
Помимо декомпиляции, JAva Decompiler обладает возможностью дизассемблирования .class-файлов.

DJ Java Decompiler

DJ Java Decompiler (автор — Atanas Neshkov) — долгое время вопреки названию являлся лишь графической оболочкой для предыдущего декомпилятора, позволявшей легко и удобно выбрать аргументы командной строки для вызова JAD. В текущей версии добавлена поддержка аннотаций, но декомпилятор стал условно-бесплатным (необходима покупка после 10 пробных использований).

JD-Core

JD-Core (автор — Emmanuel Dupuy) — очень мощная и функциональная библиотека для декомпиляции и анализа байткода Java, разработанная в рамках «Java Decompiler project».
Имеет следующие особенности:
Полностью написана на языке C++, что делает декомпиляцию необычайно быстрой
Не требует для работы Java Runtime Environment и поэтому не требует специальной установки
Корректно декомпилирует .class-файлы, сгенерированные большинством компиляторов
Пожалуй, к недостаткам JD-Core можно отнести лишь то, что она распространяется как
часть самостоятельного графического приложения JD-GUI, также разработанного на C++ и прилинкованного к ней статически, или плагина JD-Eclipse для среды разработки Eclipse, что делает практически невозможным её использование в стороннем некоммерческом проекте, особенно разработанном на языке Java. Использование библиотеки в коммерческих программных продуктах запрещено автором.

Fernflower

Fernflower — один из лучших декомпиляторов языка программирования Java на сегодняшний день.
Обладает следующими возможностями:
1. Поддерживает разнообразные языковые конструкции:
Параметрические типы
Аннотации
Перечислимые типы
Утверждения
2. Корректно декомпилирует байткод, сгенерированный вследствие некоторых известных багов компиляторов

Мой выбор

JD-GUI — для просмотра, не более
Fernflower — полное восстановление

Остановлюсь на втором. Вообще, автор данного декомпилятора вроде как не выкладывал оффлайн версию в общий доступ(или я упустил этот факт читая его блог), до последнего времени была только онлайн. Но для меня было приятным удивлением найти ее на одном форуме!

Скачать: fernflower.jar

Цитата из блога автора:
Fernflower будет развиваться в сторону деобфускатора

Специальных функций деобфускации Fernflower сейчас не содержит, они будут подключаться в дальнейшем отдельными модулями
Т.к. онлайн версия по неизвестным причинам не работает, а про оффлайн трудно что-либо сказать(кроме того, что качество декомпиляции отменное), не о каких модулях на данный момент речи быть не может.
Не хватает еще модуля переименования
Это да. Поищем что-то такое в интернетах.
На выручку придет Proguard, но необыкновенный
ProGuardDeobfuscator — небольшая модификация программы ProGuard, превращающая ее в квази-деобфускатор. В процессе обработки короткие обфусцированные имена пакетов, классов, полей и методов заменяются на более осмысленные и уникальные в пределах Jar файла.
Скачать исходники и сам деобфускатор: projectd8.org/Programs/Java/PGD

Инструменты все есть, но лично я, для облегчения воссоздания сорцов использую так же любимую Netbeans IDE — очень сильно помогает своими подсказками, особенно когда классов много.
Спасибо за внимание!

Скачать с тык :

Java Decompiler

>> Ява сервера » Программы для сервера, Java Decompiler

Другие новости по теме:
LameCrypter LameCrypter
LameCrypter ver. 811 InterludeПрограмма для криптовки utx, ukx, dat, dll, exe файлов, с последующей невозможностью их распаковки и редактирования для любителей позаимствовать чужой труд!
Режим разработчика в клиенте Lineage 2 Режим разработчика в клиенте Lineage 2
Режим разработчика в клиенте Lineage 2
appserv-2.5.10 appserv-2.5.10
[thumb][/thumb] appserv-win32-2.5.10 Apache 2.2.8PHP 5.2.6MySQL 5.0.51bphpMyAdmin-2.10.3 Размер: Размер файла Автор: AppServNetwork

Разместил: Seryozha Прочитано: 1680


Информация
Посетители, находящиеся в группе Гость, не могут оставлять комментарии в данной новости.


Реклама
Популярные новости
Опрос
Интересно ли вам читать новости на сайте?

Да, нравится читать описания
Не совсем, информация не всегда точная
Я привык к краткости

Архив новостей
Ноябрь 2017 (1)
Октябрь 2017 (4)
Сентябрь 2017 (4)
Август 2017 (4)
Июль 2017 (4)
Июнь 2017 (4)
Реклама

Наверх
Любое копирование материалов сайта строго запрещено!