|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
Есть код: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33.
При попытке его дебажить со строки Код: java 1.
по шагам, курсор доходит до строки Код: java 1.
метода newString и выбрасывает ексепшн. При этом он не заходит в сам метод Character.toChars(codePoint), а в окне Debug пишет, что код не доступен. Как сделать так, чтобы дебагер заходил в код класса Character (Примечание: source у меня приатачен и я могу видеть код метода Character.toChars по нажатию на нем Ctrl+click). ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2019, 22:33 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
По самому коду вопросов нет, эксепшен вылетает из-за того что превышено максимальное значение codePoint, но до момента выброса исключения пробегается некоторый код: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Вот по этому коду я и хочу пробежаться дебагером! ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2019, 22:43 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
Вообщем докопался: Код: java 1. 2. 3.
После этого дебагер полез в джавовские класы и я смог увидеть на каком этапе вылетал эксепшн. Остались вопросы: 1). Вроде бы для того, чтобы видеть переменные, нужно перекомпилировать файл rt.jar(но мне это сейчас не актуально). 2). Что такое debug информация, как с ней работать и нужно ли ее прикреплять к своим классам? 3). Есть ли разница, с чем работать с JRE или JDK? Если у кого есть ссылки на хорошие материалы по теме - поделитесь. Тема закрыта. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 00:04 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
faustgreen, отладочная информация по умолчанию включается в компилляцию. это опции: Код: java 1. 2. 3.
Тоесть любой ваши бинарник по умолчанию совместим с отладкой. Если вы уберете эту информацию например :lines тогда не будет связи между опкодом и строчкой в исходном коде и ваш отладчик не сможет прыгнуть в точное место. JRE нужно ставить только конечному пользователю чтобы запускать java-приложения локально. Некоторые современные оконные приложения поставляются вместе с jre или альтернативными упаковщиками которые делают "почти экзешник". ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 00:46 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
maytonJRE нужно ставить только конечному пользователю чтобы запускать java-приложения локально. JDK от JRE отличается наличием компилятора, исходников и некоторых инструментов, нужных только разработчику. Для выполнения скомпилированного приложения достаточно только JRE. Для компиляции нового приложения нужно JDK. Но если вы используете Eclipse, то у него есть свой компилятор, ему JDK не обязательно. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 10:27 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
В Идее отладчик по умолчанию не заходит в пакеты com.sun.*/ sun.* синтетические методы, сгенерированные в рантайме методы, классы и т.д. Настраивается в Debugger/Stepping. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 11:05 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
faustgreenКак сделать так, чтобы дебагер заходил в код класса Character Фильтры настраивали? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 11:35 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
GarrickmaytonJRE нужно ставить только конечному пользователю чтобы запускать java-приложения локально. JDK от JRE отличается наличием компилятора, исходников и некоторых инструментов, нужных только разработчику. Для выполнения скомпилированного приложения достаточно только JRE. Для компиляции нового приложения нужно JDK. Но если вы используете Eclipse, то у него есть свой компилятор, ему JDK не обязательно. У меня есть сомнения в "правильности использования встроенных" компилляторов. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 12:42 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
maytonУ меня есть сомнения в "правильности использования встроенных" компилляторов.1. javac умеет кросскомпиляцию; 2. Чтобы получить javac и некоторые другие утилиты Java 6/7/8 достаточно добавить tools.jar в jre/lib/; 3. Чтобы удобно вызывать компилятор - достаточно простенькой обёртки. Как пример Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 14:09 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
Ну даже в этом случае вам нужно втащить в систему 3 штуки JDK. Помним о том что автор хотел отладку системного кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 14:18 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
GarrickФильтры настраивали? Я так понимаю на приведенной вами картинке (меню Windows-Preference-Java-Debug-Step filtering), записи, которые отмечены птичкой, наоборот будут исключены из прохода дебагером. Вот что в хелпе eclipse написано: Код: java 1. 2. 3.
Т.е., если я правильно понял, у нас изначально дебагер должен иметь возможность бегать по коду всех классов, а настройками Step Filtering мы можем ограничивать общий список. Дома проверю. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 14:30 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
maytonНу даже в этом случае вам нужно втащить в систему 3 штуки JDK6/7/8 - это там, где приём работает. В Java 6 вообще появилось API, восьмёрка - последняя немодуляризированная версия. Ну и "втащить JDK" - совсем не требуется. Достаточно только rt.jar нужной версии, если целевая версия отличается от рабочей. Можно и без rt.jar "чужой" версии, но тогда компилятор предупредит, что версию байт-кода он гарантирует, а вот API - не очень. Помним о том что автор хотел отладку системного кодаЯ отвечал не на странные хотелки автора, а на ваше сомнение о встроенных компиляторах. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 16:02 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
Как будет угодно. rt.jar на улице не валяется. Вы все равно будете "качать" JDK. Может для кого-то проблема держать на машинке 2 джедеки? У меня их 4 штуки и я нормально пока себя чувствую. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 17:26 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
faustgreenGarrickФильтры настраивали? Я так понимаю на приведенной вами картинке (меню Windows-Preference-Java-Debug-Step filtering), записи, которые отмечены птичкой, наоборот будут исключены из прохода дебагером. Вот что в хелпе eclipse написано: Код: java 1. 2. 3.
Т.е., если я правильно понял, у нас изначально дебагер должен иметь возможность бегать по коду всех классов, а настройками Step Filtering мы можем ограничивать общий список. Дома проверю. Да, всё верно. Фильтрами настраивается именно то, куда не надо "заходить". ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 17:38 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
maytonВы все равно будете "качать" JDK.И?.. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 18:47 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
Basil A. Sidorov, к чему это? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 18:50 |
|
Debug с заходом в Java.lang
|
|||
---|---|---|---|
#18+
maytonBasil A. Sidorov, к чему это?К тому, что в гигабайтах загрузок мегабайты JDK никакой роли не играют. Более того, когда я занимался поддержкой соответствующего софта, у меня было по нескольку выпусков каждой из разных версий - от Java 1.4 до Java 1.7. Если всё ещё непонятно, то извольте: Расшифруйте, пожалуйста, что именно означает ваше замечание о необходимости "качать JDK?" P.S. Сборка, которую выдавали разработчики имела размер 200-280МБ. Это сравнимо с размером JDK или превышает его, но при этом обновление JDK происходит относительно редко, а обновления софта - относительно часто. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2019, 19:00 |
|
|
start [/forum/topic.php?fid=59&fpage=32&tid=2121465]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 329ms |
total: | 454ms |
0 / 0 |