Просмотр полных строк при отладке в Eclipse
При отладке кода Java строки в представлениях "Переменные" и "Выражения" отображаются только до определенной длины, после чего Eclipse показывает "..."
Есть ли способ проверить всю строку? (Это облегчает боль при добавлении операторов протоколирования для отладки повсюду)
Ответы
Ответ 1
В представлении Переменные щелкните правой кнопкой мыши на переменной и выберите Изменить значение. Если ваша переменная огромна, вам нужно подождать несколько минут (в этом случае Eclipse не отвечает на команды), но в конце Eclipse полностью покажет вашу переменную.
Ответ 2
В представлении "Переменные" вы можете щелкнуть правой кнопкой мыши по панели "Подробности" (раздел, где отображается содержимое строки) и выбрать всплывающее меню "Max Length...". Такая же длина применяется для всплывающего окна инспектор выражения и нескольких других мест.
![enter image description here]()
Ответ 3
Если у вас действительно длинная строка, я использую другую стратегию: дамп в файл. У меня есть фрагмент кода, который я использую в представлении "Просмотр", который оценивается для передачи данных в файл. Я использую Commons IO, но вы можете сделать это с помощью только методов JDK.
org.apache.commons.io.FileUtils.writeStringToFile(new java.io.File("<filename>"), <expression to evaluate>);
Естественно, вам понадобится JO Commons IO JAR в вашем пути к классам, чтобы это работало. Если вы этого не сделаете, прибегайте к работе JDK.
Ответ 4
Лучший способ просмотра значения String из представления отладки eclipse выглядит следующим образом.
1) Переключиться в режим отладки в Eclipse
2) Выберите нужную переменную в области переменных.
3) Щелкните правой кнопкой мыши на области отображения области переменных, где отображается значение, и нажмите "Максимальная длина". Введите максимальное значение char в разделе "Настройка деталей".
4) Приветствия
![введите описание изображения здесь]()
Ответ 5
Когда отладчик достигнет точки, в которой вы хотите получить значение String, просто введите оператор sysOut
System.out.println("The value is : \n " + query);
Выберите приведенный выше оператор, щелкните правой кнопкой мыши- > Выполнить
Он напечатает значение на консоли
Ответ 6
Для отладки javascript на eclipse метод "изменить значение" и метод "Макс. длина" мне не удалось, добавив требуемый объект для просмотра (Выражения), а затем Щелкните правой кнопкой мыши наблюдаемое выражение для выбора "Загрузить полное значение" - единственное решение, которое работает для меня, но даже это вставляет нежелательные "\n" в вывод.
Примечание. "Максимальная длина" должна быть установлена для "Загрузить полное значение", поскольку она загружает значения до максимальной длины (по умолчанию в eclipse 10000). См. Выше ответ, чтобы узнать, как установить максимальную длину.
Ответ 7
В Eclipse Mars нет "maxLength". И "значение изменения" работает только с "Переменные", а не "Выражения", поэтому для меня ничего не работает.
![введите описание изображения здесь]()
И выражение выражается посередине, а не в конце. Я предполагаю, что они изменили поведение по умолчанию.
Единственное, что работает для меня, - это расширить ширину столбца имени имени выражения и нажать выражение, чтобы выбрать все, чтобы увидеть полноразмерный контент.