1.啟動程式時,新增引數
-xdebug -xrunjdwp:transport=dt_socket,server=y,address=7899,suspend=n
-xdebug 啟用除錯;
-xrunjdwp 載入jdwp的jpda參考執行例項;
transport 用於在除錯程式和vm使用的程序之間通訊;
dt_socket 套接字傳輸;
server=y/n vm是否需要作為除錯伺服器執行;
address=7899 除錯伺服器監聽的埠號;
suspend=y/n 是否在除錯客戶端建立連線之後啟動 vm
2.先在程式中打好斷點,然後
其餘與本地debug類似
藍色三角:類中定義的變數
紅色方塊:私有方法定義
綠色實心圓:公有方法
黃色實心菱形:protected修飾的方法
小黃色空心菱形:protected變數
空心綠色圓環:公有定義變數
紅色字元s隨後:靜態
step into就是單步執行,遇到子函式就進入並且繼續單步執行;
step over是在單步執行時,在函式內遇到子函式時不會進入子函式內單步執行,而是將子函式整個執行完再停止,也就是把子函式整個作為一步。
step return就是單步執行到子函式內時,用step return就可以執行完子函式餘下部分,並返回到上一層函式。
step into:進入子函式
step over:越過子函式,但子函式會執行
step return:跳出子函式
將eclipse.ini檔案的最後兩行,一般預設為
-xms40m
-xmx512m
修改為-xms512m
-xmx1024m
gc試圖**記憶體,但是什麼也沒有**到。預設情況下,jvm花費了98%的時間在gc上,但是gc過之後只有不到2%的堆記憶體被**。
簡單來講,就是一次gc過後,並沒有**到記憶體,很快又會進行gc,極端情況下會迴圈gc(關鍵是並沒有**到可用記憶體),從而導致cpu100%負載。
xms jvm的初始堆大小
xmx jvm的最大堆大小
當最小堆被佔滿後,會進行gc,如果gc之後還不能得到足夠的記憶體,就會擴充套件堆,最大擴充套件至xmx設定的值。
可以新增一行"-xx:maxpermsize",在編譯檔案的時候就讓它一直最大限度占有記憶體
選中project->build automatically後無法自動編譯,取消後手動編譯也不行,可能是專案裡引了某個不用的jar包,而那個包又被你刪了,就會出現不報錯但怎麼也編譯不出來class檔案的情況,可以把所有包都刪除,然後乙個乙個的再引入,不要一下子把所有包都引入來,沒用的可能會引起不良後果
Java Eclipse斷點除錯
1 斷點快捷鍵 檢視方法說明 f2 改變為大寫 ctrl shift x 改變為小寫 ctrl shift y 複製行 ctrl alt 向下鍵 檢視類的繼承 ctrl t 檢視原始碼 ctrl shift t 列出所有的快捷鍵 ctrl shift l f5 step into 跳入函式裡面 f6...
Java eclipse常用快捷鍵
1 ctrl c v 複製 黏貼 2 ctrl z y 撤銷 反撤銷 3 ctrl d 刪除當前行 4 ctrl s 儲存 5 ctrl m 全屏當前視窗 6 ctrl n 新建 7ctrl 1 反向建立 8 ctrl 新增 刪除當前行或者選擇的多行 9 ctrl shift 新增多行注釋 10 c...
最近問題總結(部分問題還未總結完)
1 配置檔案中使用 和 分別用 和 否則會報錯。2 和 的區別 使用 在解析成sql語句時會自動新增雙引號,即 中的內容一般表示欄位的值,例如 select from user where user id 如果userid的值是100,那麼解析成的sql為 select from user wher...