在調試Java代碼,字符串的意見「變量」和「表達式」顯示只能做到一定的長度,在此之後的Eclipse顯示「...」查看完整的字符串,而調試在Eclipse
有什麼檢查整個字符串的方法? (這簡化了添加到處調試日誌記錄語句的疼痛)
在調試Java代碼,字符串的意見「變量」和「表達式」顯示只能做到一定的長度,在此之後的Eclipse顯示「...」查看完整的字符串,而調試在Eclipse
有什麼檢查整個字符串的方法? (這簡化了添加到處調試日誌記錄語句的疼痛)
如果你有一個很長的字符串,我用了不同的策略:它轉儲到一個文件中。我在顯示視圖中使用了一段代碼,經過評估後,這些代碼將數據轉儲到文件中。我使用Commons IO,但您可以使用JDK only方法來完成此操作。
org.apache.commons.io.FileUtils.writeStringToFile(new java.io.File("<filename>"), <expression to evaluate>);
當然,您需要在您的類路徑中使用Commons IO JAR來工作。如果您不這樣做,請使用JDK工作。
在變量查看您右鍵單擊該變量並選擇更改值。如果您的變量很大,您必須等待幾分鐘(在這種情況下,Eclipse不會響應命令),但最終Eclipse會完全顯示您的變量。
我只能看到''data:image/bitmap; base64,/ 9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQE ...(length:22869)「'。設置「最大長度」選項不起作用,並且「更改值」也是。 – falko 2014-07-25 14:04:24
@falko「最大長度」對我來說不起作用,「更改數值」沒問題(在等待幾秒後,取決於可變長度)。 – UmbySlipKnot 2014-07-26 08:22:43
至少在我的系統中,這比增加「最大長度」要慢很多*(請參閱其他答案)。 – sleske 2015-10-07 10:06:54
有關蝕基於JavaScript調試,「變值」的方法和「最大長度」方法都未能對我來說,加入所需對象來觀看(表達式),然後右擊觀看錶達式來選擇「Load全價值」是對我的作品的唯一解決方案,但即使這樣插入不必要的‘\ n’個輸出。
注意 - 必須爲「加載全部值」設置「最大長度」,因爲它會將值加載到最大長度(默認在eclipse中爲10000)。請參閱上面的答案以瞭解如何設置最大長度。
當調試器到達你想要的字符串值的點,只需鍵入SYSOUT聲明
System.out.println("The value is : \n " + query);
選擇語句以上,右點擊 - >執行
它會打印出值在控制檯上
,以查看從蝕調試視圖字符串值的最好方法是如下。
1)切換到調試視圖在Eclipse
2)選擇在可變窗格所需的變量。
3)可變窗格顯示區域右擊其中值被示出,並點擊最大長度。在配置詳細信息窗格中輸入最大字符值。
4)乾杯
比接受的答案好得多。謝謝! – simon 2017-07-26 13:05:24
你在哪裏看到這種行爲?調試器的哪一部分? – skaffman 2010-05-20 13:11:17
另一方面,這可能是用詞不當,因爲它可能不適用於您,但如果您使用類似java.util.logging或log4j的調試庫,則可以輕鬆地打開調試語句(使用不同級別的調試)打印輸出或日誌文件,它可能會給你在調試窗口中篩選字符串的優勢。只是一個想法=) – corsiKa 2010-05-20 13:23:51