Как отлаживать файлы .class в ECLIPSE? - PullRequest
6 голосов
/ 13 марта 2011

Я использую Eclipse 3.5, и я прикрепил src.zip к своим глобальным настройкам в Eclipse.Windows -> Настройки -> Java -> Установленные JRE -> rt.jar - Вложение источника - ..... / jdk / src.zip

Я успешно могу войти в JavaОсновная библиотека .class файлов и просмотр исходного кода.Я строю класс, который использует LinkedList, и я установил точку останова внутри класса LinkedList.

Когда я отлаживаю точки останова в моем исходном коде (мои проекты) работают хорошо, но когда мне нужно войти в java core lib .classes, я получаю следующую ошибку в моем Eclipse eclipse error

Невозможно установить точку останова в java.util.LinkedList из-за отсутствующих атрибутов Number строки.Измените параметры компилятора, чтобы сгенерировать атрибуты номера строки.

Я проверил настройки компилятора в настройках и нашел все опции отмеченными как true.enter image description here Было бы здорово, если бы кто-нибудь помог мне решить эту проблему.

Заранее спасибо.

Ответы [ 3 ]

7 голосов
/ 13 марта 2011

Возможно, вы настроили компилятор на включение отладочной информации в ВАШИ файлы классов, но файлы классов в rt.jar не были скомпилированы таким образом.Вам нужно либо перекомпилировать весь исходный код для классов в rt.jar (не для слабонервных), либо загрузить отладочную сборку jdk .

2 голосов
/ 13 марта 2011

Вы не должны использовать JRE с JDR-приложением, поскольку классы JRE плохо подходят для отладки.

Позвольте Eclipse искать среды Java, а затем выберите JDK из полученного списка. В этой среде Java файл src.zip будет правильно подключен, и вы сможете исследовать его.

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

(Кроме того, панель настроек компилятора применима только к вашему коду. Классы JRE созданы заранее, и панель не влияет на них).

2 голосов
/ 13 марта 2011

Это сообщения в блоге дают исчерпывающий список пунктов для проверки

Следуйте инструкциям при компиляции с использованием Eclipse IDE

enter image description here

  1. Перейти к экрану windows > preferences > Java > compiler.
  2. Убедитесь, что установлен флажок добавления атрибутов номера строки в сгенерированные файлы (используемые отладчиком).
  3. Создайте заново и попробуйте добавить точку останова, и надеюсь, что она будет работать для вас.

Примечание для сборок ant

Выполните следующие действия, если выкомпилируются с помощью утилиты ANT:

  1. Проверьте файл build.xml и убедитесь, что для атрибута отладки установлено значение true в задаче javac
  2. Кроме того, если вы используете JBoss в качестве приложениясервер, затем убедитесь, что вы уже открыли порт для привязки сокета к подключению удаленной машины.Если нет, просто убедитесь, что в C:/jboss/bin/run.bat есть запись с:
    "set JAVA_OPTS=%JAVA_OPTS% -Xdebug –Xrunjdwp:transport=dt_socket,address=5000,server=y,suspend=n" для открытия порта 5000 для прослушивания всех соединений с сокетами для отладочного / удаленного Java-приложения.
  3. Выполните сборку заново и попробуйте добавитьточка останова и надеюсь, что это сработает для вас.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...