1. 介绍

当我们在开发过程中遇到一些复杂的问题或需要对代码进行调试时,远程调试是一种非常有用的工具。使用 IntelliJ IDEA 进行远程调试可以让你在远程服务器上的应用程序中设置断点、查看变量和执行调试操作。

远程调试的好处如下:

提供更方便的调试环境:通过远程调试,你可以在自己熟悉的 IntelliJ IDEA 开发环境中进行调试,而不需要在远程服务器上进行调试。快速定位问题:远程调试允许你逐行调试代码,一步一步地了解代码的执行过程。这有助于快速定位和解决问题,尤其是在复杂的代码逻辑或边界情况下。查看变量并进行监视:你可以在运行过程中查看变量的值,并监视它们的变化。这有助于了解代码在执行期间的状态,找出潜在的错误。重现远程环境的问题:通过在本地进行远程调试,你可以在自己的开发环境中重现远程服务器上的问题。这样,你可以更轻松地调试并找出根本原因。

2. 创建一个springboot项目

1、创建springboot工程

2、导入依赖

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

cn.aopmin

debug_demo

1.0.0

jar

org.springframework.boot

spring-boot-starter-parent

2.7.2

8

8

UTF-8

org.springframework.boot

spring-boot-starter-web

cn.hutool

hutool-all

5.8.12

debug_demo

org.springframework.boot

spring-boot-maven-plugin

org.projectlombok

lombok

3、修改服务端口号

server:

port: 6633

4、编写controller接口

package cn.aopmin.controller;

import org.springframework.web.bind.annotation.PostMapping;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;

import java.util.HashMap;

import java.util.Map;

/**

* @author 白豆五

* @version 2023/06/28

* @since JDK8

*/

@RestController

@RequestMapping("/api/user")

public class UserController {

// region 通过ID获取用户信息

@PostMapping("/info")

public String getInfo(Long userId) {

// 匿名内部类方式构建map存放用户信息

Map userInfo = new HashMap() {

{

put("userId", 129);

put("userName", "白豆五");

put("userAge", 18);

put("userSex", "男");

}

};

if (userId == userInfo.get(userInfo)) { //如果两个包装类型比值要用equals方法

return "用户信息:" + userInfo.toString();

}

return "用户不存在";

}

//endregion

}

3. 将项目打包,并部署到虚拟机上

前提环境:别忘装JDK

1、将项目打包,上传到虚拟机的/tmp目录

2、切到/tmp目录,执行如下命令启动程序

java -jar -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 zxx.jar

虚拟机IP地址:192.168.150.123,端口5005(别忘放行),jar包名: debug_demo.jar

java -jar -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=192.168.150.123:5005 debug_demo.jar

Listening for transport dt_socket at address: 5005

4. 在IDEA中创建远程调试启动项

1、添加远程调试启动项

2、配置远程调试参数

5. 测试

1、在指定代码处打断点

2、Bebug启动远程调试

3、访问项目接口:http://192.168.150.123:6633/api/user/info

ok,到这里我们就简单把debug远程调试跑通了✌。

文章链接

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。