写点什么

基于华为开发者空间的云端 JVM 服务远程调试:CodeArts IDE 配置指南

  • 2025-09-11
    中国香港
  • 本文字数:1575 字

    阅读完需:约 5 分钟

基于华为开发者空间的云端JVM服务远程调试:CodeArts IDE配置指南

1 概述

1.1 背景介绍

在我们线上遇到问题的时候,可能要在出现问题的地方增加日志,重新进行编译打包部署,然后再对问题部分输出的日志进行问题分析,如果日志有遗漏,还需要重复这个流程。本案例为大家带来一个新的解决方式,通过 CodeArts IDE 的远程调试功能,使用调试器监听传入连接来进行远程 JVM 服务的 DEBUG 调试。

1.2 适用对象

  • 企业

  • 个人开发者

  • 高校学生

1.3 案例时间

本案例总时长预计 60 分钟。

1.4 案例流程


说明:


① 登录云主机,拉取代码,启动 CodeArts IDE 终端 Terminal;② 启动鲲鹏云服务器,部署服务至鲲鹏云服务器;③ 配置 CodeArts IDE 远程连接鲲鹏云主机,使用 CodeArts IDE 调试鲲鹏云主机上部署的服务。

1.5 资源总览

本案例预计花费总计 0 元。

体验完整案例请点这里👉️👉️👉️使用云主机CodeArts IDE进行远程JVM服务调试

2 操作步骤

2.1 拉取代码到 CodeArts IDE

进入云主机后,点击下方菜单的“Terminal Emulator”按钮,打开命令行工具。




在命令行中输入命令“cd ~”跳转到用户家目录下。



在命令行中输入下面 git 命令拉取代码。


git clone https://gitcode.com/CaseDeveloper/E-SpringBootWebDemo-Java.git
复制代码



使用 CodeArts IDE 打开下载代码的文件夹。




等待 CodeArts IDE 右下角工程模型自动同步成功。



点击“终端”,开启 CodeArts IDE 终端。


2.2 部署服务至鲲鹏云主机

  1. 在终端输入自动部署命令,命令如下:


hcd deploy --password abcd1234@ --time 3600
复制代码


命令的参数说明:


  • password:password 关键字后设置的是鲲鹏服务器的 root 用户密码,命令中给出的默认为 abcd1234@,开发者可以替换成自定义密码(至少 8 个字符)。

  • time:time 关键字后面设置的为鲲鹏服务器的可用时间,单位为秒,至少 600 秒。当前实验预估需要 40 分钟,为了保证时间充足,在命令中申请的时间为 60 分钟,即 3600 秒。



  1. 记录下自动部署后生成的弹性公网 IP 地址。


  2. 点击 Maven 下的 package 编译打包当前项目。


  3. 将当前包传输至鲲鹏云远程云主机上。在终端输入传输命令,命令如下:

  4. IP 为第 2 步记录的弹性 IP。


scp target/E-SpringBootWebDemo-Java.jar root@IP:\~
复制代码


这个命令的作用是将第 3 步构建的位于当前目录 target 目录下的 E-SpringBootWebDemo-Java.jar 包传输至鲲鹏云远程云主机上的/root 目录下。


遇到类似下图需要确认的情况输入 yes 确认。



输入密码请输入第一步申请时设置的密码,默认为 abcd1234@



  1. 远程登录鲲鹏云主机

  2. IP 为第 2 步记录的弹性 IP。


ssh root@IP
复制代码


输入密码请输入第一步申请时设置的密码,默认为 abcd1234@。




  1. 执行命令部署服务,执行下面命令部署服务。


nohup java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5210 -Dserver.port=8201 -jar E-SpringBootWebDemo-Java.jar &
复制代码


参数说明:


  • nohup : 后台运行 SpringBoot 进程

  • -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5210 :SpringBoot 服务端添加远程通道这里我们使用 5210 端口作为服务端开放的端口。后面我们要使用这个端口作为 CodeArts IDE 调试端口。

  • -Dserver.port : SpringBoot 默认启动端口为 8080,这里配置为 8201 避免和鲲鹏云上端口冲突。



输入下面命令持续查看部署日志:


tail -f nohup.out
复制代码


2.3 配置 CodeArts IDE 远程连接鲲鹏云主机

点击“编辑配置”。



添加 Remote Debug(Attach to remote JVM),HOST 为 2.2 第二步记录的弹性 IP,PORT 为上一步 address=5210 填写的 5210 端口。




点击启动,CodeArts IDE 下方出现橘黄色标识即为成功。


2.4 用 CodeArts IDE 调试鲲鹏云主机上部署的服务

将鼠标挪动到对应代码行的编码前方,会浮现红色断点,单击红色断点,在代码中打断点。




打开浏览器输入:http://IP:8201/helloword/ceshi。其中IP替换成自己的服务器IP地址。



进入 CodeArts IDE 查看,已经进入调试模式,可以将鼠标放置到变量上查看,前端浏览器访问参数,可以通过右上快捷调试进行调试。




至此,本案例内容全部完成。


注: 调试必须保证本地和线上运行的 SpringBoot 代码一致才能成功。


用户头像

提供全面深入的云计算技术干货 2020-07-14 加入

生于云,长于云,让开发者成为决定性力量

评论

发布
暂无评论
基于华为开发者空间的云端JVM服务远程调试:CodeArts IDE配置指南_JVM_华为云开发者联盟_InfoQ写作社区