基于java项目 服务器远程debug开启教程

2023-11-18

首先,在我们的工作中避免不了进行远程调试,我们可以通过远程debug的方式去调试我们的程序代码。

通常我们的spring项目打成包的方式有jar,或者war包发布到我们的远程服务器上,我们先介绍第一种jar包方式开启远程debug:

打成jar包的项目我们有两种方式去开启远程debug

第一种Jar包 可以通过修改我们的Pom文件

在我们的spring打包插件中加入 configuration标签里面的内容,加入了此配置后,打包后的项目发布到服务器上,可以支持远程debug

 <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <jvmArguments>-Xdebug -Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=n</jvmArguments>
                </configuration>
            </plugin>
        </plugins>
    </build>

具体参数详解:
-Xdebug 通知JVM工作在DEBUG模式下。
-Xrunjdwp 通知JVM使用(java debug write protocol)运行调试环境,该参数同时包含了一系列的调试选项。
transport 指定了调试数据的传送方式,dt_socket是指SOCKER模式,另有dt_shmem指用共享内存方式,其中,dt_shmem只适用于windows平台。
address 调试服务器的端口号,客户端用来连接服务器的端口号
server=y/n JVM是否需要作为调试服务器执行
suspend=y/n 是否在调试客户端建立连接之后启动JVM
把项目打包成JAR包,发布到服务器上面

然后通过命令启动jar包
启动Jar包 -jar 后面带上我们的jar包名称

java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar  (jar包的名称)

第二种Jar包 我们不需要添加打包插件configuration标签里面的内容,

只需要在启动命令中加入如下内容就可以开启远程debug

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

完整开启远程debug调试命令 -jar后面 带上我们自己jar包名称

java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=5005,suspend=n -jar jar包名称

<!-- 比如我们的jar包名称是logAop-project-0.0.1-SNAPSHOT.jar  那么完成命令就是如下 -->
java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=5005,suspend=n -jar logAop-project-0.0.1-SNAPSHOT.jar 

至此打成jar包开启远程debug的两种方式介绍完了,感兴趣的小伙伴可以自己尝试下,有问题可以私信我呢!!

上面我们启动远程debug之后,可以通过Idea开发工具进行远程调试了 相信步骤来喽!!

idea 版本是最新的 2022版的 不同版本有稍微不同,接下来表演

第一步:
在这里插入图片描述
第二步: 点击Edit configuration之后 出现如下页面,
在这里插入图片描述
第三步: 选择 Remote 相关字样
在这里插入图片描述
第四步:点击 Remote 相关字样之后,进行远程调试的配置
在这里插入图片描述
第五步,上述配置完之后,启动
在这里插入图片描述

启动完之后 出现如下,说明启动成功,可以进行远程调试了
在这里插入图片描述
至此远程debug idea配置完毕,不懂的请私信呢!!!

项目中我们有的项目打成的是war,可以一下方式进行配置

第一步:将web应用部署到Tomcat的webapp目录下,
第二步:修改Tomcat/bin/startup.bat文件,在最前面加上如下代码:
SET CATALINA_OPTS=server -Xdebug -Xnoagent -Djava.compiler=NONE-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005

idea配置步骤如上!!!!

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

基于java项目 服务器远程debug开启教程 的相关文章

随机推荐

  • 如何学习大数据

    文章目录 每日一句正能量 前言 一 什么是大数据 二 大数据的应用领域 三 社会对大数据的人才需求 四 大数据的学习路线 后记 每日一句正能量 多数人认为 一旦达到某个目标 人们就会感到身心舒畅 但问题是你可能永远达不到目标 把快乐建立在还
  • 看到了一个 蒙特卡洛方法 随机数得出 圆周率的c++ 源码

    package bt6 import java util Random 看到了一个 蒙特卡洛方法 随机数得出 圆周率的c 源码 复制过来 一个Java版的见笑了 author suifeng public class PITest publ
  • sqlmap过SQLi-LABS靶场 11-20关

    第11关 后面基本都是post注入了 不过我们用的是神器sqlmap 我们先随便输入 然后bp抓包 把抓到的包保存问txt格式 然后在sqlmap 指定他 用 r sqlmap py r C Users Administrator Desk
  • 记录shardingsphere 5.0.0的一个问题

    shardingsphere的一个问题 最近shardingsphere更新了5 0 0版本 加入了很多新特性 所以我在自己的练习项目中想启动配置启动一下 但是并不是那么顺利 升级之后就直接无法启动了 根据错误栈提示是找不到一个名为Mode
  • Android studio 模拟器启动黑屏解决办法附图详细

    Android studio 模拟器启动黑屏解决办法附图详细 问题描述 原因分析 android模拟器在创建时 一般默认设置为热启动 所以每次关闭模拟器时 会提示保存当前运行界面状态 若选择取消 则下一次启动会以最近一次保存的状态启动显示
  • Pycharm安装CV2

    1 win r 然后输入cmd进入中端 安装的指令用 pip install opencv python i http mirrors aliyun com pypi simple trusted host mirrors aliyun c
  • husky hooks 不起作用的解决方法

    问题 在项目实际应用过程中遇到过一次 husky hooks 不生效的问题 这里记录下 问题表现 问题比较直观 通过 huksy install 之后 git commit 时 pre commit 设置的 hooks 不起作用 重新安装
  • 最详细的Vivado安装教程

    V i v a d o 安 装
  • Date类型与字符串的相互转换

    Date时间类型与字符串的相互转换 Test public void date throws ParseException 一 Date时间类型转字符串 1 获取当前时间 Date date new Date 2 设定时间格式 下面两行可以
  • 2017蓝桥杯C++A组题解集合

    总结 蓝桥杯的题目大多数都是暴利或者dfs bfs解出来的 注意往这上面思考 下面是赛题的链接 https wenku baidu com view 951dab772a160b4e767f5acfa1c7aa00b52a9d2d html
  • 程序发生run time error原因及解决方案

    程序发生run time error原因及解决方案 runtime error现象即产生原因 属于运行时错误 当程序运行到一半 程序发生崩溃 1 数组过小 2 除数为零 3 大数组定义在函数内 4 指针越界 5 还有可能是程序抛出了未接收的
  • angular Model 指令

    ng model指令用于绑定应用程序数据到HTML控制器 input select textarea 的值 可以将输入域的值域AngularJS创建的变量绑定 并且支持双向绑定 如下例子 div name div
  • elementUI使用el-upload上传文件写法总结及避坑,上传图片/视频到本地/服务器以及回显+删除

    Element Upload 上传 Element Upload官方文档 el upload 具体细节只看官方文档 本篇主要介绍避坑点和用法总结 注意点以及坑 本地上传想要回显图片视频 使用on success是没办法再在上传后获取到本地文
  • 20个简洁的 JS 代码片段

    20个简洁的 JS 代码片段 1 单行 If Else 语句 这是许多编程语言的共同特征 你可以使用三元运算符用一行代码编写整个语句 而不是在多行上编写 if else 例如 const age 12 let ageGroup LONG F
  • proteus8.9仿真闪退怎么解决?如何找到ProgramData?

    proteus8 9仿真闪退 将C Program Files x86 Labcenter Electronics Proteus 8 Professional 中MODELS文件夹复制到C ProgramData Labcenter El
  • 线性代数---之正交向量

    转载 百度百科 正交向量 编辑 本词条由 科普中国 百科科学词条编写与应用工作项目审核 正交向量 是一个数学术语 指点积为零的两个或多个向量 几何向量的概念在 线性代数中经由抽象化 得到更一般的向量概念 此处向量定义为 向量空间的元素 要注
  • 【计算机视觉

    文章目录 一 检测相关 11篇 1 1 Follow Anything Open set detection tracking and following in real time 1 2 YOLO MS Rethinking Multi
  • 【分治法】中位数问题和Gray码问题——武汉理工大学算法分析与设计课程实验

    i 中位数问题 问题描述 设X 0 n 1 和Y 0 n 1 为两个数组 每个数组中含有n个已排好序的数 找出X和Y的2n个数的中位数 编程任务 利用分治策略试设计一个O log n 时间的算法求出这2n个数的中位数 数据输入 由文件inp
  • sublime text添加install package报错 Package Control There are no packages available for installation

    sublime text在使用插件之前 需要安装Package Control插件 但在安装时报错 There are no packages available for installation 也就是说无法获取安装所需的包 首先确认网络
  • 基于java项目 服务器远程debug开启教程

    首先 在我们的工作中避免不了进行远程调试 我们可以通过远程debug的方式去调试我们的程序代码 通常我们的spring项目打成包的方式有jar 或者war包发布到我们的远程服务器上 我们先介绍第一种jar包方式开启远程debug 打成jar