標籤:idea 垃圾收集器 http 公司 ide 技術分享 問題: mpi 自測
一個程式,部署在自己的電腦上,debug調試,相信大家都會,但是,如果我想debug調試非本地部署的程式怎麼辦呢。比如測試伺服器上部署的程式。
其實這樣的需求也是經常有的,比如一個大型的項目有很多模組,也有很多自己的或外部的依賴,不可能在自己電腦上整個都搭建一整套完整的環境。先不管有多複雜,有時候公司的電腦配置再不給力,部署一個大型程式更是雪上加霜。通常這樣的程式都是直接部署到專門的開發或測試環境裡面。很少在自己電腦上部署測試。再加上運用像jenkins這樣的自動化的部署工具,部署只是點幾下按鈕的事兒。不比在本地起一個tomcat多出多少工作。就更沒有必要在本地部署程式測試了。包括開發自測和測試人員的測試。當然這隻是說的稍微大一點的項目。一個小的獨立的項目在本地部署測試還是很方便的。
好了,言歸正傳,既然部署到其它地方,想debug一步一步地調試就不能像在本地部署一樣了。也就是文章一開始提出的問題。
其實解決起來也很簡單,
-
- 設定tomcat
在目標程式啟動並執行tomcat的catalina.sh檔案中加上
JAVA_OPTS="-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=26310"
當然這可能只是啟用遠程debug的最少配置,這些啟動參數當然可以跟其它JVM參數一塊設定。像常見的設定堆記憶體大小,垃圾收集器,gc日誌列印,堆棧轉儲等等的參數。
好了,這就是目標tomcat需要做的所有設定了,簡單吧。注意這裡設定的address=26310,這是本地和遠程程式通訊的連接埠,要和後來在IDE工具中設定的一致。做完這些工作,就差不多成功一半了。
- IDEA 設定
點擊位置
再點擊"Edit Configurations..."
出現如下介面,再點擊左上方的加號
出現如的介面,點擊Remote
設定完了點擊apply
想要遠端偵錯就點擊的位置選擇你剛才設定好的
然後點擊debug按鈕就可以在你的機器上打斷點調試你的遠程部署的代碼了
- 其它IDE工具我不怎麼用,就不知道怎麼設定了,需要的自己研究下。
IDEA調試伺服器上部署的程式