Шаг через исходный код JDK в IntelliJ IDEA
Как я могу перейти через исходный код JDK в IntelliJ IDEA 7 и посмотреть информацию об отладке? В настоящее время я могу ударить точки останова и выполнить код, но информация об отладке недоступна. Это означает, что я не вижу значения локальных переменных.
Я только хочу пройти через исходный код одного classа, если это имеет значение. (Для чего это стоит, это class javax.swing.text.html.HTMLDocument
(и у меня есть копия соответствующего .java-файла).)
- NUnit не запускает код Visual Studio 2010
- Где находится VBA Debug.Print?
- Индексы индексов должны быть либо натуральными натуральными, либо логическими, общим решением
- Запуск / установка / отладка приложений Android через Wi-Fi?
- Как редактировать и отлаживать источники библиотеки R
- Как мне работать с ClassNotLoadedException во время отладки?
- Не удалось подключиться к серверу ASP.Net Development Server
- Определить строку кода, которая вызывает ошибку сегментации?
- Шаг в свойство / функцию (F11) не работает должным образом
- Как я могу подключиться к Android с ADB через TCP?
- Где узнать о VS отладчике «волшебные имена»
- gprolog: получение stacktrace после исключения
- Как определить, являются ли методы Apple асинхронными?
Если вы заглянете в меню [меню «Файл» ->] «Настройки» -> «отладчик» -> «Шаг», вы увидите список «Не входите в эти classы», возможно, с «java. *», Указанным там. Это так? Вы можете отключить это.
По-видимому, отладочная информация недоступна. Согласно этой теме :
К сожалению, classы JDK имеют отладочную информацию для параметров и локальную переменную.
Несколько лет назад я подал запрос, что Idea должна выводить необходимую информацию из исходного кода (в основном конвертируя имена переменных в индексы в методы local var):
Отладчик: Показывать информацию о переменной, когда нет отладочной информацииПожалуйста, проголосовать / комментировать.
В качестве обходного пути вы можете повторно скомпилировать JDK из источников, но вам нужно исключить некоторые classы, которые не имеют всего необходимого исходного кода.
Интересно, что вы можете загрузить бета-версию Java 6u18, в которой есть отладочная информация (в пакете DEBUG).
UPDATE : версия IntelliJ IDEA 13+ может предоставлять информацию о локальных переменных без отладочной информации .
Java-classы, которые являются частью JDK, скомпилированы без отладочной информации по причинам размера и производительности. Если вам нужна информация об отладке в этих classах, вам также нужно будет установить версию JDK для разработки, в которой classы создаются с информацией об отладке или перестраивать части JDK, которые вы хотите отлаживать из источника, с включенной информацией об отладке и настройкой новый JDK с этими версиями classов в баночках.
В этом streamе содержатся инструкции по восстановлению classов JDK в rt.jar из исходного кода с информацией об отладке.
PS Этот вопрос не относится к IntelliJ IDEA.
- Установите JDK
- Загрузка OSX: https://developer.apple.com/downloads
- Загрузка Windows: http://www.oracle.com/technetwork/java/javase/downloads
- Добавить путь src.jar
- Перейдите к: Структура проекта (параметры проекта)> Настройки платформы> SDK> Исходный путь
- Добавить путь к src.jar
- Пример OSX: /Library/Java/JavaVirtualMachines/1.6.0_45-b06-451.jdk/Contents/Home
- Пример Windows: C: \ Program Files \ Java \ jdk1.7.0_03 (проверьте программу (x86) для 32-разрядной версии)
- Подождите долгое время для индексации!
- Удалить фильтр отладчика
- Перейдите к: Настройки> Отладчик> Шаговый
- Снимите флажок, который вы хотите, например, javax. *
Наряду с информацией «Не входите в эти classы» необходимо настроить src.jar. Щелкните правой кнопкой мыши проект, выберите «Открыть настройки модуля». В разделе «Настройки платформы» выберите «SDK». Выберите версию Java SDK, которую вы используете. Выберите вкладку «Исходный путь», нажмите кнопку «+» и добавьте свой src.jar из JDK (или отдельную загрузку исходного кода для OSX JDK). Это позволит вам открывать classы JDK и входить в них во время отладки.
Я сделал это на своем Mac, чтобы получить исходный код для Android, но подобный подход должен сработать для вас.
-
Файл> Структура проекта
-
Выбранные «SDK» в разделе «Настройки платформы».
-
Выбранный «Android SDK»
-
Выбранная вкладка «Исходный путь»
-
Нажато “+”
-
Просмотрен в местоположении моего исходного кода Java
setting – compiler – java Compiler – параметры java, вы должны проверить опцию «генерировать информацию отладки», затем она будет компилироваться с информацией об отладке.