Eclipse远程调试注意事项

2023-10-27

第一部分: springboot远程调试

一、准备条件。

1、springboot程序以debug方式启动。

2、配置eclipse remote debug参数。

二、debug方式启动java application

java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9011 -Djava.net.preferIPv4Stack=true -jar xxxx1.0.jar

其中address=9011为端口号。

suspend=n表示不等待调试程序直接启动。=y表示等待eclipse调试接入后才启动。

三、配置eclipse remote debug参数。

在弹出的图中找到“Remote Java Application”,并右键“new”,然后按照如下配置。

第二部分: tomcat远程调试

一. 打开tomcat的bin目录如下,需要修改的文件有catalina.bat与startup.bat

eclipse如何远程调试代码

二. 在catalina.bat中添加 set JPDA_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=localhost:8080 

eclipse如何远程调试代码

三. 在startup.bat中添加jpda

eclipse如何远程调试代码

四. 开启tomcat,会出现一句话,表明已经在监听服务器地址下的端口号了

eclipse如何远程调试代码

五. 打开eclipse,右键项目debug as——debug configurations

eclipse如何远程调试代码

六. 双击remote java application,配置好服务器上的IP及端口号,点击Debug运行

eclipse如何远程调试代码

eclipse如何远程调试代码

七. 服务器上会自动运行war包里面的内容了,最后在eclipse打上断点就可以debug了。

eclipse如何远程调试代码

第三部分: 远程调试参数解读

eclipse远程调试两种模式:

一、服务端监听

(1)服务器端需执行程序前加参数  -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000

   说明:server=y 是指目标应用程序作为服务监听将要连接的远程调试器(常用);

              suspend=y 是指目标VM将暂停,直到调试器应用程序进行连接(若需要调试启动错误,很有用);

              suspend=n 是指目标VM不暂停;

              address=8000 监听端口。

(2)运行服务端程序,程序将暂停

(3)eclipse ==> Debug Configurations ==> Remote Java Application 新建测试工程

(4)选择工程 ==> 模式 Socket Attach ==>  调试服务器IP ==> 调试端口(这里假设8000)

(5)运行debug

二、调试端监听(不常用)

(1)eclipse ==> Debug Configurations ==> Remote Java Application 新建测试工程

(2)选择工程 ==> 模式 Socket Listen ==> 调试监听端口(这里假设8000) ==> Allow termination of remote VM 打勾

(3)运行debug,程序将暂停,左上显示 Waiting for vm to connect at port 8000...

(4)服务器端需执行程序前加参数  -Xdebug -Xrunjdwp:transport=dt_socket,address=172.16.7.34:8000

   说明:address=172.16.7.34:8000 发送连接的地址和端口。

(5)运行服务端程序

~以上资料来源于互联网并稍作整理~

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Eclipse远程调试注意事项 的相关文章

随机推荐

  • git基本操作(git权威指南笔记)

    打里程碑 git tag m Say bye bye to all previous practice old practice git describe 将最近的提交显示一个易记的名称 最近的里程碑作为 基础版本号 后面附加标识距离 基础
  • 十大排序算法C++实现

    1 插入排序 和玩纸牌游戏一样 抓牌时小的插在前边 后边牌往后移动 void insertSort int arr int len if arr len lt 2 return int preIndex 0 curVal 0 for int
  • esp8266-i2s无线音频--转

    I2S 3 Wire Connection 原网址 https circuitdigest com microcontroller projects i2s communication on esp32 to transmit and re
  • SpringBoot集成ElasticSearch

    学习网站 官网 参考视频 狂神 依赖导入 创建一个SpringBoot项目 加进入依赖
  • C/C++的redefinition

    在头文件里写下下面两行相同的代码 typedef int X typedef int X gcc编译马上就会报redefinition of typedef X 换g 居然啥事没有 怪异吧 于是去查文档 发现C 里是这样描述的 In a g
  • CUDA ---- Constant Memory

    CONSTANT MEMORY constant Memory对于device来说只读但是对于host是可读可写 constant Memory和global Memory一样都位于DRAM 并且有一个独立的on chip cache 比直
  • 从CCF一道试题《碰撞的小球》看:面向过程与面向对象编程方式的差异

    题目如下 试题编号 201803 2 试题名称 碰撞的小球 时间限制 1 0s 内存限制 256 0MB 问题描述 问题描述 数轴上有一条长度为L L为偶数 的线段 左端点在原点 右端点在坐标L处 有n个不计体积的小球在线段上 开始时所有的
  • 使用pands.rolling方法实现移动窗口的聚合计算

    一个问题举例 假设有一个5天的收益数据 需要每3天求出一次平均值来达成某个需求 date revenue 2023 05 01 10 2023 05 02 20 2023 05 03 30 2023 05 04 40 2023 05 05
  • 新建服务器步骤

    1 初始化项目 1 1npm init 之后 可以直接敲回车 注意名字 2 创建入口文件 3 安装 express Express 基于 Node js 平台 快速 开放 极简的 Web 开发框架 npm i express 4 在入口文件
  • LocalDateTime相关处理,得到零点以及24点值,最近五分钟点位,与Date互转,时间格式...

    最近一直使用LocalDateTime 老是忘记怎么转换 仅此记录一下 import java time Instant import java time LocalDateTime import java time LocalTime i
  • MySql详细安装教程

    登录https dev mysql com downloads mysql 5 5 html downloads 进入官网下载页面 mysql ZIP Archive是压缩版本 需要自己配置 mysql MSI Installer是安装版本
  • whois命令常见用法

    whois命令常见用法 whois命令简介 安装whois Windows使用whois Linux安装whois whois常见用法 Linux下whois查询域名注册信息 whois命令简介 whois就是一个用来查询域名是否已经被注册
  • ner计算准召的坑

    1 踩了个大坑 记录一下 声明 不喜欢写estimator所以才踩的坑 1 from tensorflow contrib import crf 如果想使用这个函数 tensorflow的版本号要在1 14以下 1 12就可以 不要相信那些
  • python3.8下载及安装步骤详解

    python3 8下载及安装步骤详解 这篇文章主要介绍了python3 8下载及安装步骤详解 本文图文并茂给大家介绍的非常详细 具有一定的参考借鉴价值 需要的朋友可以参考下 1 操作系统 Windows7 64bit Python版本 3
  • 【非Web工程】Spring + C3P0 + Hibernate + Mysql

    工程依赖包 配置文件applicationContext xml
  • egg(一):创建一个egg项目

    前言 企业级node框架egg的运用之路 首先是搭建一个项目 目录 官网入口 点我 具体操作 1 安装nodejs运行环境 支持版本8以上 2 安装egg 二选一 推荐第一个 npm init egg type simple npm ini
  • unity二维数组A*寻路

    public class AStarData public float G 到下一个的距离 public float H 到终点的步数 public float F G H public Vector2 pos 坐标 public ASta
  • Spring中DataIntegrityViolationException异常介绍

    在使用Spring的时候 经常碰到的一个异常是 DataIntegrityViolationExceptio 这个异常是当插入 删除和修改数据的时候 违背的数据完整性约束抛出的异常 例如 主键重复异常等 个人spring cloud开源脚手
  • Nodejs之require加载机制(模块可以污染全局空间)

    Nodejs之require加载机制 模块可以污染全局空间 发表于2013 9 6 17 33 28 16437人阅读 分类 JavaScript Node js 以前就觉得Nodejs的MooTools库很奇怪 因为用他的时候 不需要把r
  • Eclipse远程调试注意事项

    第一部分 springboot远程调试 一 准备条件 1 springboot程序以debug方式启动 2 配置eclipse remote debug参数 二 debug方式启动java application java Xdebug X