雲栖号資訊:【 點選檢視更多行業資訊】
在這裡您可以找到不同行業的第一手的上雲資訊,還在等什麼,快來!
今天分享一下 IntelliJ IDEA 的進階調試技巧,來看下有多騷,确實要比 Eclipse 強太多了!
一、條件斷點
循環中經常用到這個技巧,比如:周遊1個大List的過程中,想讓斷點停在某個特定值。

二、回到"上一步"
該技巧最适合特别複雜的方法套方法的場景,好不容易跑起來,一不小心手一抖,斷點過去了,想回過頭看看剛才的變量值,如果不知道該技巧,隻能再跑一遍。
參考上圖,method1方法調用method2,目前斷點的位置j=100,點選上圖紅色箭頭位置的Drop Frame圖示後,時間穿越了
回到了method1剛開始調用的時候,變量i變成了99,沒毛病吧,老鐵們,是不是很6 :)
注:好奇心是人類進步的階梯,如果想知道為啥這個功能叫Drop Frame,而不是類似Back To Previous 之類的,可以去翻翻JVM的書,JVM内部以棧幀為機關儲存線程的運作狀态,drop frame即扔掉目前運作的棧幀,這樣目前“指針”的位置,就自然到了上一幀的位置。
三、多線程調試
多線程同時運作時,誰先執行,誰後執行,完全是看CPU心情的,無法控制先後,運作時可能沒什麼問題,但是調試時就比較麻煩了,最明顯的就是斷點亂跳,一會兒停這個線程,一會兒停在另一個線程,比如下圖:
如果想讓線程在調試時,想按自己的願意來,讓它停在哪個線程就停在哪個線程,可以在圖中3個斷點的小紅點上右擊,
注意上圖中的紅框位置,斷點停下來時,這個下拉框可以看到各個線程(注:給線程起個容易識别的名字是個好習慣!),我們可以選擇線程“天空中的飛鳥”
斷點如願停在了第2句詩。
四、遠端調試
這也是一個裝B的利器,本機不用啟動項目,隻要有源代碼,可以在本機直接遠端調試伺服器上的代碼,打開姿勢如下:
4.1 項目啟動時,先允許遠端調試
【雲栖号線上課堂】每天都有産品技術專家分享!
課程位址:
https://yqh.aliyun.com/zhibo立即加入社群,與專家面對面,及時了解課程最新動态!
【雲栖号線上課堂 社群】
https://c.tb.cn/F3.Z8gvnK
原文釋出時間:2020-06-03
本文作者: 光年
本文來自:“
網際網路架構師 微信公衆号”,了解相關資訊可以關注“
網際網路架構師”