Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.117.196.217] |
|
Сообщ.
#1
,
|
|
|
Java-декомпиляторы HOW-TO
Эта документация поможет Вам декомпилировать Java-классы. Здесь приведен список декомпиляторов, которые помогут Вам получить при этом файлы исходных кодов Java. Это поможет Вам, если у Вас есть только класс-файлы, а надо видеть исходный код. Информация здесь применима ко всем операционным системам, где запущена JVM. Введение (Английская версия этого документа лежит тут. Вы можете посмотреть там, если ищете последнюю обновленную версию). Java-компилятор компилирует файлы исходных кодов Java (*.java) в бинарники (*.class). Вы можете использовать декомпилятор для конвертирования java-классов в файлы исходных кодов (*.java). Java-декомпилятор будет очень полезен, если имеются в наличии только *.class-файлы и нет доступа к исходникам. Некоторые разработчики не распространяют исходные коды вместе с бинарниками и в этом случае декомпилятор будет просто незаменим. См. также команду "javap" от Sun Microsystems из стандартного набора jdk. В unix, в командной строке наберите: bash$ javap -help bash$ javap -c <filename>.class Могу ли я доверять Java-декомпиляторам ?! Для стопроцентной гарантии необходимо научное (прим. перев. - не знаю почему автор тут сделал акцент, забавно звучит =)) обоснование для доверия результатам, выводимым Java-декомпиляторами. Чтобы проверить правильность генерации Java-декомпилятором исходного кода используйте следующую методику: Создайте класс-файл из кода, сгенерированного компилятором: bash$ mv myprogram.class myprogram_orig.class bash$ javac myprogram.java Теперь используйте комманду 'diff' (в unix) чтобы сличить два класс-файла: bash$ diff myprogram.class myprogram_orig.class Оба эти файла должны быть идентичны. Это доказывает то, что декомпилятор работает правильно. В DOS или Windows вы можете использовать свободнораспространяемую Cygnus Cygwin 'diff' или 'MKS' утилиты. Эти действия дают 100% гарантии и 100% качества использования декомпиляторов. Рекомендуется проделывать эти действия каждый раз, когда вы используете декомпилятор (прим. перев. - ну это уж слишком ) Ссылки Итак, список доступных Java-декомпиляторов: Список декомпиляторов в Google Directory [Автор - Al Dev (Alavoor Vasudevan), перевод и дополнения - Angie] Выдержка из переведенного how-to. Копирайт: Цитата Лицензия GNU/GPL Дополнительные требования - вы упоминаете имена авторов, email адреса и это требование для всех копий. Если Вы изменили или дополнили этот документ, то вы должны указать всех авторов изменений. |