Отладка jar-файла с исходным кодом, прикрепленным в eclipse - PullRequest
13 голосов
/ 07 февраля 2011

Пожалуйста, дайте мне знать, как я могу отладить любой jar-файл с исходным кодом, прикрепленным в eclipse.

Когда я пытался отладить его, реализация завершалась по желанию, но контроль никогда не достигал точек останова.

Ответы [ 7 ]

19 голосов
/ 09 мая 2012
  • Щелкните правой кнопкой мыши на банку, на которую ссылается ваш проект, выберите «свойства»
  • В «Приложении Java Source» нажмите кнопку «Рабочая область ...»
  • Выберите «папка src из проекта jar в вашей рабочей области

или, если вы хотите сделать больше шагов:

  • Щелкните правой кнопкой мыши по проекту, выберите «свойства»
  • На вкладке «Путь сборки Jave» выберите вкладку «Библиотеки»
  • Разверните (щелкните «+») банку, с которой вы хотите связать источник
  • Нажмите «Вложение источника» (должно бытьвысказывание «Источник вложения: (Нет)»)
  • Нажмите кнопку «Редактировать ...»
  • Следуйте из второго пункта в более коротких шагах выше
6 голосов
/ 11 марта 2013

Вы попробуете это:

Сначала откройте файл jar с помощью JD (Java Decompiler), затем нажмите Файл -> Сохранить источники JAR, и он станет файлом .zip, содержащим исходные файлы java.Затем вы можете добавить этот исходный zip-файл в конфигурацию отладки, используя add source.Тогда он точно будет работать.

Я также сталкивался с подобной проблемой, когда-то во время отладки классов jar-файлов.Но после вышеупомянутой процедуры проблема была решена.

5 голосов
/ 15 декабря 2016

Используйте команду ниже, чтобы запустить ваш jar:

java -Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=y -jar [JAR NAME]

В нем должно быть что-то вроде:

Listening for transport dt_socket at address : 8000

В eclipse создайте конфигурацию отладки " Remote Java Application " и добавьте модули jar.

2 голосов
/ 07 февраля 2011

Я делал это много раз, и он прекрасно работает для меня.Убедитесь, что вы поставили точки отладки в правильное положение.Возможно, из-за того, что какой-то код условия станет недоступным, в это время точка отладки не вступит в силу.Поместить точку отладки в вызывающий оператор метода означает, где вы вызвали метод класса jar.Если управление достигает там, тогда press F5, чтобы войти в метод в классе файла jar.Если контроль там не достигается, это означает, что у вас есть некоторые условия в коде, которые препятствуют вызову этого метода, и, следовательно, вы не можете достичь своей точки останова в методе.

0 голосов
/ 04 июня 2019

У вас есть эта страница, если у вас нет исходного файла .. enter image description here

Нажмите кнопку «Прикрепить источник», у вас есть эта страница ..

enter image description here

Если у вас есть исходный код в вашем рабочем пространстве, вы можете напрямую выбрать этот способ ..

enter image description here

Если у вас есть исходный код во внешнем местоположении, выберите внешнюю папку и выберите src вашего исходного кода ..

enter image description here

Если выправильно добавленный источник, вы можете отлаживать эти файлы ..

0 голосов
/ 05 июня 2018

При использовании Eclipse версии Oxygen.2 (2017) для меня следующая процедура прошла успешно.

  1. Запустите приложение для отладки с помощью переключателей Xdebug и Xrunjdwp.

    cd "C:\Program Files\Test_742\Test 7.4" test_app.exe -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8500

  2. Создание нового рабочего пространства в Eclipse.

  3. Создайте новый проект Java, используя File -> New -> Java Project.

  4. Скопируйте исходный код Jar для отладки в папку src нового проекта. Я счел необходимым убедиться, что скопировал всю иерархию папок исходного кода в мою исходную папку.

    Для меня это означало копирование \ com \ test ... в мою папку src.

    Это помещает весь исходный код в путь сборки.

  5. Скопируйте любые JAR-файлы зависимостей в проект. Я создал новую папку с именем myJAR.

  6. Обновите Package Explorer, чтобы увидеть новую папку myJARs.

  7. Добавьте JAR-файлы зависимостей в путь сборки, открыв Файл -> Свойства -> Путь сборки Java -> Библиотеки (вкладка), и нажмите Добавить JAR-файлы ...

    Добавьте каждый JAR-файл зависимости в список, затем нажмите «Применить и закрыть». Это добавляет JAR-файлы к ссылочным библиотекам.

  8. Настройка сеанса отладки. Нажмите «Выполнить» -> «Отладка конфигурации» -> «Удаленное приложение Java». Я установил Connection Type = Standard.

    Настройте хост так, чтобы он указывал на компьютер, на котором запущен JAR, а порт - на порт, указанный в разделе address переключателей командной строки (8500 в моем примере).

  9. Обратите внимание, что на вкладке Источник присутствуют как исходные файлы, так и JAR-файлы зависимостей.

  10. Нажмите Применить, затем Отладка.

  11. Чтобы просмотреть перспективу отладки, нажмите Окно -> Перспектива -> Открыть перспективу -> Отладка.

  12. Поместите точки останова в исходный код.

0 голосов
/ 05 июля 2016

«Обходной путь - перейти на страницу настроек PDE« Целевая платформа »и отключить все внешние подключаемые модули. Они вызывают проблему, поскольку синхронизатор модели, который должен предотвращать появление« двойников », не работает должным образом».

Ссылочная ссылка - https://bugs.eclipse.org/bugs/show_bug.cgi?id=22961 Комментарий № 10.

Обходной обходной путь мне помог.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...