解读Spring-boot的debug调试

作者:蜗牛随风在奔跑 时间:2022-06-09 15:04:06 

由于之前一直在使用spring-boot开发,但一直苦恼于不知道如何利用debug调试代码.在网上查找了很多文章之后。学习之余决定把spring-boot项目分别在eclipse和idea的调试过程简单做一下整理,方便大家以后能根据自己的需求来学习,不足之处还望指正。其调试原理主要还是利用jvm的远程调试。

  • pom.xml关于jvm启动参数的配置

  • 启动spring-boot项目

  • 利用debug工具连接调试

  • 设置断点,调用api接口

一、pom.xml关于jvm启动参数的配置

jvm参数配置如下所示:

解读Spring-boot的debug调试

简单介绍下以上参数的含义:

  • -Xdebug是通知JVM工作在DEBUG模式下

  • -Xrunjdwp是通知JVM使用(java debug wire protocol)来运行调试环境。该参数同时了一系列的调试选项

  • transport指定了调试数据的传送方式,dt_socket是指用SOCKET模式

  • server参数是指是否支持在server模式的VM中

  • suspend指明,是否在调试客户端建立起来后,再执行VM,如果为y,那么当前的VM就是suspend直到有debug client连接进来才开始执行程序。如果你的程序不是服务器监听模式并且很快就执行完毕的,那么可以选择在y来阻塞它的启动。

  • address=5005 调试服务器的端口号,客户端用来连接服务器的端口号。

二、启动spring-boot项目

在eclipse和idea下分别启动项目。因需要不同公共环境的配置,故选择maven的启动命令:clean install -Ptest -X spring-boot:run(-Ptest表示测试环境下启动,-X表示强制执行),不依赖于任何公共配置的spring boot项目可独立执行(即启动按钮)。大家可根据自己的实际情况选择。 

1.eclipse的spring -boot项目启动成功的截图如下,圈红线处表示启动成功:

解读Spring-boot的debug调试

2.idea的spring -boot项目启动成功的截图如下,圈红线处表示启动成功:

解读Spring-boot的debug调试

三、利用debug工具连接调试

1.关于eclipse的debug连接调试,可右击项目–>选择debug as–>Debug Configuration…–>Remote Java Application–>右击new即可。

a.remote java application:

解读Spring-boot的debug调试

b.配置host以及port,因项目在本地启动,故使用localhost,port用之前配置的address的值,即5005端口。接着点击debug连接调试

解读Spring-boot的debug调试

c.debug启动连接调试成功如图所示,初始配置之后,下次可选择点击小虫子连接调试

解读Spring-boot的debug调试

2.关于idea的debug连接调试,可选择idea右上角的edit Configuration..(启动按钮旁)–>选择左上角的+–>选择Remote点击新增即可。

a.remote页面出现之后,同样因为spring-boot项目也是在本地启动,故使用localhost,port用之前配置的address的值,即5005端口。name名称可随意取(不作限定),接着点击ok:

解读Spring-boot的debug调试

b.debug启动连接调试成功如图所示,选择右边的debug启动,如图所示

①点击按钮:

解读Spring-boot的debug调试

②remote启动连接成功:

解读Spring-boot的debug调试

四、设置断点,调用api接口

1.eclipse下编写测试类调用api接口,同时设置断点,debug调试成功(另说明,调用接口调试方法自定,不一定非要编写测试类调用)

a.编写测试类调用api接口

解读Spring-boot的debug调试

b.调试成功

解读Spring-boot的debug调试

2.idea下编写测试类调用api接口,同时设置断点,debug调试成功(另说明,调用接口调试方法自定,不一定非要编写测试类调用)

a.编写测试类调用api接口

解读Spring-boot的debug调试

b.调试成功

解读Spring-boot的debug调试

在此,关于spring-boot基于jvm分别在eclipse和idea的debug调试介绍就完成了。不足之处,还望指正。

来源:https://blog.csdn.net/qq_30005875/article/details/77102595

标签:Springboot,debug,调试
0
投稿

猜你喜欢

  • Java IO文件后缀名过滤总结

    2021-09-01 23:36:47
  • c# Selenium爬取数据时防止webdriver封爬虫的方法

    2023-06-24 07:50:51
  • java模拟TCP通信实现客户端上传文件到服务器端

    2023-11-26 10:14:49
  • Java编程基础测试题分享

    2023-11-27 22:14:58
  • Android编程中避免内存泄露的方法总结

    2023-07-27 19:32:50
  • Java抢红包的红包生成算法

    2023-06-23 20:52:04
  • SpringMVC+Mybatis实现的Mysql分页数据查询的示例

    2023-11-24 20:53:33
  • Jenkins+Maven+SVN自动化部署java项目

    2021-06-01 11:28:27
  • Java8中Optional类型和Kotlin中可空类型的使用对比

    2023-07-29 07:49:21
  • Java Swing组件布局管理器之FlowLayout(流式布局)入门教程

    2021-11-08 05:33:06
  • Spring深入刨析声明式事务注解的源码

    2023-10-23 09:41:48
  • Java中不可或缺的关键字volatile详析

    2023-07-22 12:11:29
  • java设计模式笔记之适配器模式

    2021-12-27 05:27:30
  • SpringCloudAlibaba整合Feign实现远程HTTP调用的简单示例

    2023-11-19 16:16:05
  • Studio 编译报错:compileSdkVersion 'android-24' requires JDK 1.8 or later to compile.的解决办法

    2023-06-19 17:19:41
  • 详解Mybatis中常用的约束文件

    2023-11-28 08:02:17
  • Java 实现判定顺序表中是否包含某个元素(思路详解)

    2023-09-11 01:03:04
  • 关于springboot集成阿里云短信的问题

    2023-08-23 09:46:15
  • 详解在Spring中如何自动创建代理

    2023-11-15 15:28:52
  • Java修饰符 abstract,static,final 的区别详解

    2023-12-19 22:11:25
  • asp之家 软件编程 m.aspxhome.com