Как отлаживать скомпилированный Java-код в Eclipse [закрыто]
интересно, есть ли какие-либо решения для Eclipse IDE для отладки Java-кода, для которого у меня нет источника, т. е. для отладки динамически декомпилированного кода, шага через него и т. д.? Я пытался использовать JD-Eclipse, JadClipse, и эти плагины отлично работают, если я хочу посмотреть на некоторые файлы классов, но по мере отладки я получаю "источник не найден."- как я могу "прикрепить" эти плагины к источнику" предоставить"?
мое окружение:
- затмение 3.5
- Windows XP (Но я ищу кросс-платформенное решение, если это возможно)
спасибо.
8 ответов
У меня есть хороший опыт работы с Jadclipse -http://jadclipse.sourceforge.net/wiki/index.php/Main_Page - есть сайт обновления на http://jadclipse.sf.net/update
для достижения наилучших результатов используйте jad и настройте его для отображения номеров строк в качестве комментариев, которые позволят выводить код в правильной строке. Это лучше всего подходит для отладки сеансов.
затем установить его по умолчанию для классов. См. документацию подробности. Это хорошо работает для меня.
У меня такая же проблема. Сегодня декомпиляторы не эффективны для отладки скомпилированного Java-кода. Я работаю над JD-Eclipse. В ближайшие 3-6 месяцев макет JD-Eclipse должен быть действительно улучшен. Мы начнем отлаживать классы без источников и решать некоторые неразрешимые проблемы.
фрагмент перестройки для JD-Eclipse host plug-in. Этот плагин для Eclipse делает декомпилированные номера строк кода фактически соответствующими номерам строк из файла java-класса. В результате становится возможной отладка без исходного кода. https://sourceforge.net/projects/realignmentjd/
этот плагин, надеюсь, поможет. JD-Eclipse
в открытом окне eclipse - > Настройки - > Общие - >Редакторы - > ассоциации файлов Выбирать.* тип файла класса Свяжите его с JD-Eclipse Установите значение по умолчанию
Удачи
вы можете использовать JD-GUI для декомпиляции файлов jar и сохранения всей партии в исходный zip-файл, который затем может быть добавлен в список поиска источника (через Configure Build Path).
проблема с JD-GUI заключается в том, что номера строк отсутствуют, что делает отладку очень сложной, поэтому вам нужно
- извлеките исходные файлы из декомпилированного исходного zip-файла
- запустите сценарий, найденный в https://bushlife.com.au/groups/python/wiki/7539a/Adjust_line_numbers_in_file.html
- zip созданный источник резервного копирования
- добавьте его в качестве исходного пути, связанного с вашим файлом java - с помощью Configure Build Path после щелчка правой кнопкой мыши по файлу jar в вашем проекте java.
Декомпилируйте все классы, поместите все файлы Java, упорядоченные в соответствующей иерархии (каталог для пакета и т. д.), а затем добавьте их в качестве источника исходного jar, щелкнув правой кнопкой мыши файл jar - > Java Source Attachment - > External folder.
вы также можете иметь их внутри папки в проекте (в этом случае нажмите на Workspace)
решение, которое сработало для меня, использует JD-Eclipse после применения патча:http://java.decompiler.free.fr/?q=node/464
Это расширение jd-eclipse, которое перестраивает код после декомпиляции.
при отладке с eclipse вам просто нужно иметь файлы jar в пути к классам, и все! Нет необходимости декомпилировать всю банку, перестраивать или что-то еще... Просто отладьте и будьте счастливы: -)
вот как это сделать он: http://gauchoacomecable.wordpress.com/2011/10/14/eclipse-debug-java-without-source-code-jd-eclipse-and-realignment/
я улучшил плагин "перестройка для JD Eclipse", чтобы правильно выстроить перечисления и поля и опубликовал его вместе с JD Eclipse на моем собственном сайте обновления:http://mchr3k-eclipse.appspot.com/
подробности о моих изменениях: http://mchr3k-coding.blogspot.co.uk/2012/07/realignment-for-jd-eclipse.html