iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > JAVA >IDEA实现远程Debug调试(附上Demo代码)
  • 938
分享到

IDEA实现远程Debug调试(附上Demo代码)

intellij-ideajavaide 2023-10-24 19:10:25 938人浏览 独家记忆
摘要

目录 一、 前提二、 idea中如何实现远程Debug模式(1)、创建demo项目(2)、引入依赖(3)、创建启动类和创建demo(4)、配置idea 二、 IDEA的Debug的优缺点

目录


一、 前提

  需要准备jdk1.8环境,安装IDEA(版本不限)

二、 IDEA中如何实现远程Debug模式

(1)、创建demo项目

File一>New一>project…
在这里插入图片描述
2.Maven Archetype一>填写Name一>选择jdk1.8一>选择Web一>创建

在这里插入图片描述

(2)、引入依赖

参数详解:

【-Xdebug】:通知JVM工作在DEBUG模式下。
【-Xrunjdwp】:通知JVM使用(Java debug wire protocol)运行调试环境。
【transport】:指定调试数据的传送方式,dt_Socket是指用SOCKET模式,另有dt_shmem指用共享内存方式。据说:dt_shmem只适用于windows平台。
【address】:调试服务器的端口号,客户端用来连接服务器的端口号(一般工具中默认5005端口,也可以自定义,这个没有关系)。
【server=y/n】:VM 是否需要作为调试服务器执行(选择y)。
【suspend=y/n】:是否在调试客户端建立连接之后启动 VM。

<project xmlns="Http://Maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">  <modelVersion>4.0.0modelVersion>  <parent>    <groupId>org.springframework.bootgroupId>    <artifactId>spring-boot-starter-parentartifactId>    <version>2.3.5.RELEASEversion>    <relativePath/>  parent>  <groupId>com.legroupId>  <artifactId>remote-ideaartifactId>  <packaging>jarpackaging>  <version>1.0-SNAPSHOTversion>  <name>remote-idea Maven WEBappname>  <dependencies>    <dependency>      <groupId>junitgroupId>      <artifactId>junitartifactId>      <version>3.8.1version>      <scope>testscope>    dependency>        <dependency>      <groupId>org.springframework.bootgroupId>      <artifactId>spring-boot-starter-webartifactId>    dependency>    <dependency>      <groupId>org.projectlombokgroupId>      <artifactId>lombokartifactId>    dependency>  dependencies>  <build>    <finalName>remote-ideafinalName>    <plugins>      <plugin>        <groupId>org.springframework.bootgroupId>        <artifactId>spring-boot-maven-pluginartifactId>        <configuration>          <jvmArguments>-Xdebug -Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=njvmArguments>        configuration>      plugin>    plugins>  build>project>

(3)、创建启动类和创建demo

启动类:

package com.le;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplicationpublic class RemoteIdeaApplication {    public static void main(String[] args) {        SpringApplication.run(RemoteIdeaApplication.class, args);    }}

测试demo:

package com.le.controller;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class TestDemoController {    @PostMapping("/test")    public String test(Integer id, String name) {        System.out.println("id=" + id);        System.out.println("name=" + name);        if (id > 0) {            return "le " + name;        } else {            return "false";        }            }}

启动,测试一下demo是否正常

在这里插入图片描述
在这里插入图片描述

(4)、配置idea

在这里插入图片描述
找到Remote Jvm Debug
在这里插入图片描述

填写名称,输入IP地址,pom里面配置的端口,选择jdk对应版本,选择debug的模块

注意:
选择 jdk9以上,则为
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:1111

在这里插入图片描述
打包
在这里插入图片描述

在这里插入图片描述

把Jar包放入在D盘根目录下面,然后使用CMD命令启动

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

在这里插入图片描述
在IDEA中启动,打上断点

在这里插入图片描述

使用apiPost测试
在这里插入图片描述

在这里插入图片描述
成功
在这里插入图片描述
这个时候我们就可以开始Debug了,是不是方便找问题了,使用linux系统也是一样的,只是改变一下启动方式,还要防火墙问题。

二、 IDEA的Debug的优缺点?

优点: 把断点打在本地,直接访问线上程序即可,方便调试。(线上程序出了问题,无法根据log进行排查时)。

缺点: 可能会造成“阻塞”。(同一程序中,本地断点没走完之前,别的接口请求可能会“阻塞”)。

使用这种方式,有利有弊,根据不同场景判断是否使用。

二、 Demo的源代码地址

百度网盘链接:https://pan.baidu.com/s/1i6BxYLtGiRzxLXvlyMxtTw
提取码:pfg2

也可私信我,找我获取源代码


总结

  以上就是使用IDEA来实现远程Debug的方法,希望能够帮助到大家,点赞支持一下,谢谢!

来源地址:https://blog.csdn.net/le9528/article/details/130596819

--结束END--

本文标题: IDEA实现远程Debug调试(附上Demo代码)

本文链接: https://www.lsjlt.com/news/441784.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • IDEA实现远程Debug调试(附上Demo代码)
    目录 一、 前提二、 IDEA中如何实现远程Debug模式(1)、创建demo项目(2)、引入依赖(3)、创建启动类和创建demo(4)、配置idea 二、 IDEA的Debug的优缺点...
    99+
    2023-10-24
    intellij-idea java ide
  • idea远程debug调试部署在tomcat上项目
    目录一、IDEA添加Remote二、服务器配置三、开始debug调试本机场景:spring boot项目部署在腾讯云服务器的tomcat里。注意:要保证本地的代码与服务器上部署的代码...
    99+
    2024-04-02
  • jvm开启远程调试功能;idea远程debug
    概述 有时候一些问题本地调试无法复现,这个时候可以开启jvm的远程调试功能 jar包启动 jdk8 java -agentlib:jdwp=transport=dt_socket,address=8787,server=y,suspend=...
    99+
    2023-08-30
    jvm intellij-idea java
  • IDEA Debug如何实现多线程调试断点
    这篇文章主要介绍了IDEA Debug如何实现多线程调试断点,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。多线程调试断点Intellij IDEA 的debug断点...
    99+
    2023-06-27
  • Hadoop源码分析四远程debug调试
    1、 hadoop远程debug 从文档(3)中可以知道hadoop启动服务的时候最终都是通过java命令来启动的,其本质是一个java程序。在研究源码的时候debug是一种很重要的...
    99+
    2024-04-02
  • 如何远程调试Python代码
    这是一篇小记。平时使用python写的代码对外部依赖性都不复杂,这些代码在本地调试,运行没问题之后,就可以放到生产去跑了。然而,最近的一个项目,由于使用了一些内部服务,需要连接到内部的环境进行调试。如果每次都修改代码之后,发布一次到内部环境...
    99+
    2023-01-31
    代码 Python
  • Hadoop 使用IntelliJ IDEA 进行远程调试代码的配置方法
    目录一 .前言二 .服务器端配置2.1. 设置启动远程debug端口2.2. 具体操作三 .Idea配置3.1. 根据报错信息定位到断点所在的位置 报错信息如下:3.2. 配置远程连...
    99+
    2024-04-02
  • goland远程调试k8s上容器的实现
    目录选node并同步代码准备debug镜像创建deployment创建svc上次也遇到过一次需要在k8s的容器里debug程序的情况,当时找了个偷懒的办法绕过去了,这回绕不过去了,老...
    99+
    2023-02-01
    goland远程调试k8s容器 goland远程调试k8s
  • vscode如何远程调试python代码
    这篇文章主要介绍了vscode如何远程调试python代码的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇vscode如何远程调试python代码文章都会有所收获,下面我们一起来看看吧。环境配置配置 python...
    99+
    2023-07-06
  • Linux 上的 Go 编程:如何调试和测试代码?
    Go 是一种强大的编程语言,它的出现为开发者们提供了更快,更可靠的编程体验。然而,即使是最好的编程语言也会有一些问题,因此在编写 Go 代码时,调试和测试是必不可少的。在本文中,我们将深入探讨如何在 Linux 上调试和测试 Go 代码。...
    99+
    2023-07-10
    教程 linux 关键字
  • Pycharm远程调试服务器代码(使用P
    准备工作 1.随便准备一个项目工程,在本地用Pipenv创建一个虚拟环境并生成Pipfile和pipfile.lock文件,如下: 2.准备一台服务器,我这里使用阿里云的ECS SSH连接上 $ ssh root@ip Pycharm同...
    99+
    2023-01-31
    代码 服务器 Pycharm
  • Java平台调试体系原理分析和实践整理远程Debug
    目录一、原理分析(一)介绍(二)IDEA和eclipse 调试原理为(三)架构体系二、远程调试实例三、JDI工具代码实践(一)JDI技术架构(二)实践案例总结一、原理分析 (一)介绍...
    99+
    2023-03-09
    Java平台调试体系 Java远程Debug Java Debug原理
  • IDEA中WebService生成Java代码并调用外部接口实现代码
    最近一个Spring项目中需要调用其他第三方系统的接口对接数据,对方只给了一个wsdl地址,我们需要根据给的wsdl地址,自己来生成里边的接口等调用接口所需要的类,来调用接口实现数据...
    99+
    2024-04-02
  • vscode怎么远程调试python代码?方法整理
    在《vscode远程gdb调试》文章中,介绍了如何使用 vscode 调试 c/c++ 代码,作为该文的姊妹篇,本文对调试 python 代码的方法做一个整理。环境配置远程连接的方法同 《vscode远程gdb调试》中的第 1 节相同,本文...
    99+
    2023-10-22
    python VSCode
  • 使用goland调试远程代码的操作步骤
    前言 很多时候我们都在window上使用goland,并直接使用goland调试go代码。 但是很多时候我们的程序运行在Linux服务器上,虽然可以通过dlv命令行进行手动打断点调试...
    99+
    2024-04-02
  • ASP.NET Core中怎么实现远程调试
    这篇文章给大家介绍ASP.NET Core中怎么实现远程调试,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。体验Web Deploy这种发布方式可直接将代码打包发到指定服务器的指定站点下,十分方便。远程调试注意事项若要使...
    99+
    2023-06-19
  • VSCode连接远程服务器调试代码详细流程
    文章目录 1.远程连接服务器2. 打开项目文件目录3. 配置调试环境 在研究人工智能项目时,很多时候本地机器性能不够,只能把代码拉倒服务器上,然后利用服务器资源来运行代码。遇到问题时需要调试,本文详细介绍利用VScode来调...
    99+
    2023-08-19
    vscode 服务器 远程调试 人工智能
  • 【漏洞复现】CVE-2021-3129 Laravel Debug mode 远程代码执行漏洞
    文章目录 声明前言一、漏洞简介二、影响范围三、环境搭建四、漏洞复现五、修复方法六、参考链接 前言 Laravel是一套简洁、优雅的PHP Web开发框架(PHP Web Framewor...
    99+
    2023-09-07
    php laravel web安全
  • 如何在VSCode上调试Electron应用的主进程代码
    这篇“如何在VSCode上调试Electron应用的主进程代码”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何在VSCod...
    99+
    2023-06-30
  • windows+vscode穿越跳板机调试远程代码的图文教程
    1、安装vscode,ssh2、添加插件:Remote - SSH3、配置远程机器 添加远程机器地址: 4、连接远程服务器项目实现从本地开发电脑(win10)的vscode直接开...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作