亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Intellij IDEA基于Springboot的遠程調試

標簽:
Java MongoDB Ruby

简介

本篇博客介绍一下在Intellij IDEA下对Springboot类型的项目的远程调试功能。所谓的远程调试就是服务端程序运行在一台远程服务器上,我们可以在本地服务端的代码(前提是本地的代码必须和远程服务器运行的代码一致)中设置断点,每当有请求到远程服务器时时能够在本地知道远程服务端的此时的内部状态。

方法

首先,打开Edit configurations,点击+号,创建一个Remote应用。

填写name,配置Host地址(远程服务器地址)和端口(选一个未被占用的端口)。然后复制For JDK1.4.x下面的参数,示例配置的端口为5005

-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005

经过以上步骤,已经获得了启动远程服务器的参数。在启动springboot时默认使用java命令来启动.
比如,示例项目启动命令为:

$ java -jar remotedebug-0.0.1-SNAPSHOT.jar

那么此时在启动命令上添加上面获得的参数(非springbboot项目,就是把多的那段配置添加到相应的环境变量即可):

$ java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005  remotedebug-0.0.1-SNAPSHOT.jar

这样服务端就监听在5005端口了。可以通过以下命令来检查是否监听成功:

netstat -anp | grep 5005

docker

如果应用是跑在容器中的,只需要修改Dockerfile即可。例子如下

FROM java:8

COPY target/agents.jar /app.jar
EXPOSE 8080
EXPOSE 5005
ENTRYPOINT ["java","-jar" ,"-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005","-Dspring.profiles.active=sit","/app.jar"]

通过以上步骤已经完成了服务器端参数的添加。下面启动刚才配置的Remote服务。在启动时候我们会发现此项启动程序只有debug启动模式。

启动完成,对需要debug的代码打上断点,剩下的操作步骤就是访问远程服务器对应的业务请求,本地就会同步debug。其余的操作与本地debug相同,此处就不再赘述了。

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
JAVA開發工程師
手記
粉絲
1
獲贊與收藏
14

關注作者,訂閱最新文章

閱讀免費教程

  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消