Как получить Java Decompiler / JD / JD-Eclipse, работающий в Eclipse Helios
Java Decompiler (JD) обычно рекомендуется как хороший, ну, Java Decompiler. JD-Eclipse-это плагин Eclipse для JD.
У меня были проблемы на нескольких разных машинах, чтобы запустить плагин. Всякий раз, когда я пытался открыть .class file, стандартный редактор "Source not found" покажет, отображая разборку байт-кода низкого уровня, а не исходный вывод Java, который вы ожидаете от декомпилятора.
установка документов в http://java.decompiler.free.fr/?q=jdeclipse не плохо, но довольно расплывчато, когда дело доходит до устранения неполадок.
открытие этого вопроса для сбора дополнительной информации: с какими проблемами вы столкнулись до запуска JD в Eclipse Helios? Каково было решение?
14 ответов
вот материал, с которым я столкнулся:
1) RTFM и установите упомянутый "распространяемый пакет Microsoft Visual C++ 2008 SP1" в верхней части установочных документов. Сначала я пропустил это, потому что инструкции Helios находятся в конце.
2) закрыть все открытые вкладки редактора перед открытием файла класса. В противном случае легко получить устаревшую вкладку редактора из предыдущей попытки.
3) Откройте файл класса в "Редакторе файлов классов Java" (не " файл класса Java Зритель.)" Используйте "открыть С" в контекстном меню, чтобы получить правильный редактор. Если вы довольны результатами, сделайте его редактором по умолчанию в настройках ассоциации файлов, в окне/предпочтения общие/Редакторы/ассоциации файлов выберите *.класс для открытия с помощью "Java Class File Editor".
4) этот парень рекомендует установить пакет Equinox SDK с сайта обновления Helios. Да, но я не уверен, что это было действительно необходимо. Кто-нибудь знает?
5) если файлы класса вы попытка просмотра находится в проекте Eclipse Java, они должны быть в пути сборки проекта. В противном случае в журнале ошибок Eclipse появится исключение ("не в пути сборки"), и декомпиляция завершится ошибкой. Я добавил файлы классов в качестве папки файлов библиотеки / класса в путь сборки.
6) перетащите файл класса из Проводника Windows или откройте его с помощью File / Open File... не будет работать. В моих тестах я даю " не удалось открыть редактор: Средство просмотра файлов класса не может обработать данный ввод ('орг.затмение.пользовательский интерфейс.интегрированная среда разработки.FileStoreEditorInput')." ошибка. Это, вероятно, неправильный редактор в любом случае, см. 3).
7) после запуска плагина некоторые файлы по-прежнему не декомпилируются по неизвестной причине. Это исчезло после закрытия всех вкладок, перезапуска Helios и повторной попытки.
чтобы заставить его работать в Eclipse Juno-мне пришлось сделать несколько дополнительных шагов.
В Общем - > Редакторы - > Ассоциация Файлов
- выбрать "*.класс "и отметьте" редактор файлов класса " по умолчанию
- выбрать "*.класс без источника" - > добавить - > "редактор файлов класса" - > сделать его по умолчанию
- перезапустить eclipse
Я использую Eclipse 3.7 Indigo и Windows 7 64-бит:
Что я сделал, так это установить распространяемый пакет Microsoft Visual C++ 2008 SP1, как было предложено сайтом и напомнено @Universalspezialist.
затем установите плагин, как указано на сайте:http://java.decompiler.free.fr/?q=jdeclipse
перейти к предпочтению, затем найти " файловые Ассоциации" Нажмите на *.класс, затем установите "редактор файлов класса" как по умолчанию.
перезапустить Eclipse, возможно? (Я сделал это, но я не уверен, что это необходимо или нет)
простая вещь, которую я сделал, чтобы заставить его работать:
пошел в eclipse > окно > настройки
(необязательно)введите в поле поиска "файл", чтобы помочь обрезать дерево опций. Зашел в раздел Общие > Редакторы > ассоциации файлов.
нажал ".тип класса. Ниже присутствовали 2 редактора, я нажал на "редактор файлов классов" - тот, у которого есть значок от JD, нажал кнопку" по умолчанию " справа.
сделано. Теперь все классы ur принадлежат США.
плагин JD-eclipse 0.1.3 может только декомпилировать .файлы классов, видимые из пути classpath / Build Path.
Если класс находится в .Джар, вы можете просто добавить этот Jar в путь сборки в другую библиотеку. В Проводнике пакетов просмотрите новую библиотеку и откройте класс в Редакторе файлов классов.
Если вы хотите декомпилировать любой класс в файловой системе, он должен находиться в соответствующей папке hierachy, и корневая папка должна быть включена в путь сборки. Вот пример:
- класс foo.бар.MyClass в .../someDir/foo / bar / MyClass.класс!--2-->
- в проекте Eclipse добавьте папку с произвольным именем aClassDir, на которую ссылается .../someDir.
- добавьте эту связанную папку в путь сборки проекта.
- используйте вид навигатора для навигации и открытия .файл класса в Редакторе файлов класса. (Отмечать: Простой.файлы классов в файловой системе скрыты в представлении проводника пакетов.)
Примечание: Если someDir является подпапкой вашего проекта, вы можете пропустить Шаг 2 (папка ссылок) и добавить его непосредственно в путь сборки. Но это не работает, если это выходная папка компилятора проекта Eclipse.
P. S. Я хотел бы просто дважды щелкните по любому .файл класса в любой вложенной папке проекта без необходимости иметь его в пути к классам...
вместо этого я использую jadeclipse, потому что он не может работать в 3.6/3.7 eclipse
сайт обновление http://webobjects.mdimension.com/jadclipse/3.6/
установке http://5thcross.wordpress.com/2009/05/20/installing-jadclipse-in-eclipse/
JAD Decomplier плагин для Eclipse версия 3.x и 4.x.
обновить сайт:http://feeling.sourceforge.net/update
действия:
- открыть Eclipse IDE.
- нажмите справка - > установить новое программное обеспечение
- вставить выше URL и дать имя как JAD.
- выберите декомпилятор класса Eclipse
- Нажмите кнопку Далее и принять соглашения
- установить он.
- перезапустите Eclipse и проверьте сейчас.
после тестирования на Juno, Kepler и Luna я обнаружил, что JD работает только для *.файлы классов на пути сборки.
- добавление jar в качестве lib существующего проекта
- перейдите в Настройки- > Общие - > Редакторы - >ассоциации файлов, установите
*.class without source
доClass File Editor
со значком чашки
Если вам нужно декомпилировать автономную банку, попробуйте JD-GUI тем же автором (JD-Eclipse). Это автономное приложение (не требуется eclipse). Он может открыть оба *.класс и.* файл jar. Достаточно интересно, что он нуждается в установке .Net (как и JD-Eclipse), но в остальном работает как шарм.
найти его здесь:
с уважением,
Its должен работать для всей версии eclipse даже в весеннем костюме инструмента (STS). Вот шаги
перейти по URl перейдите по ссылке Скачать или нажмите на ссылку ниже для прямой загрузки Нажмите здесь, чтобы загрузить
скачать JD-Eclipse
.
Загрузите и распакуйте сайт обновления JD-Eclipse,
Запустить Eclipse,
нажмите "справка" > установить новое программное обеспечение...",
нажмите на кнопку "Добавить..."чтобы добавить новый хранилище,
введите "JD-Eclipse Update Site" и выберите локальный каталог сайта,
выберите извлеченную папку и даем любое имя. Я дал JDA
.
и нажмите кнопку ОК.
Проверьте "Java Decompiler Eclipse Plug-in",
Далее, Далее, Далее... и перезапустить Eclipse.
Я сделал шаги 1, 2, 3 и 7. и я помещаю папку с файлами классов в путь сборки проекта (щелкните правой кнопкой мыши, Свойства, путь сборки java, библиотеки, добавьте папку класса, создайте новую папку, дополнительно>>, ссылку на папку в файловой системе, обзор,...) затем перезапустите Eclipse.
шаги для добавления декомпилятора Java в Eclipse:
- откройте Eclipse IDE.
- Нажмите Кнопку Справка->Eclipse Marketplace Мастер
- на вкладке поиска найдите JD (JD-ключевое слово, чтобы получить декомпилятор класса Eclipse)
- выберите Декомпилятор Класса Eclipse
- нажмите на Установить.
- перезапустите Eclipse и проверьте
просто загрузите сайт со страницы JD. Я смог установить с локального сайта в разделе программного обеспечения isntalled eclipse.
- загрузите сайт обновления JD-Eclipse (github.com/java-decompiler/jd-eclipse)
Запустить Eclipse,
нажмите "справка" > установить новое программное обеспечение...",
нажмите на кнопку "Добавить..."чтобы добавить новое хранилище,
введите "JD-Eclipse Update Site" и выберите локальный каталог сайта,
Проверьте " Java Decompiler Eclipse Plug-in",
следующий, следующий, следующий... и перезапустить Eclipse.