Читай 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 Прочитано: 1595


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


Реклама
Опрос
Используете ли вы "Вход через Вконтакте" на нашем сайте?

Да, конечно
Недавно начал использовать
Нет, у меня уже есть аккаунт

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

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