goland配置在远程linux里运行代码开发,并debug调适

环境:

windows 10
phpstudy8.1.1.3
Vmware安装centos7.6

场景

window10里goland开发,在远程linux里运行,并debug断点调适

步骤:

  1. windows 10里安装好go环境
  2. linux里也安装好go环境
  3. goland配置ssh连接linux
  4. goland配置ssh远程执行代码

具体操作

步骤1和2略过,不会的自己百度一下

也可参考下面连接
https://www.cnblogs.com/haima/p/12057933.html

步骤3.goland配置ssh连接linux

参考下面的连接:
配置方法一样:
https://www.cnblogs.com/haima/p/13257524.html

步骤4.goland配置ssh远程执行代码

首页安装好 goland 下面两个插件

image

编辑运行配置:
image

选择 GO Build
image

选择 SSH...
image

配置 SSH 连接linux 和 linux里的运行代码的位置

image

配置windows 的代码位置,和工作目录
image

到此配置完成。

测试断点调适

  1. 设置断点
    image

  2. debug启动
    image

  3. 看一下linux里的进程
    image

  4. 查看代码已经自动同步到linux系统里
    image

  5. apipost请求api接口地址
    image

  6. 可以看到已经入debug断点了
    image

windows安装cwrsync-client
https://itefix.net/cwrsync-client

到此完成,

如果linux环境升级go版本后,debug运行报如下错误

WARNING: undefined behavior - version of Delve is too old for Go version 1.20.2 (maximum supported version 1.18)

解决方式

  1. linux go 环境安装 dlv,然后复制到 windows的GOPATH/bin 目录中
  2. goland 编辑自定义属性指定到dlv上
  3. 重启 goland
  4. debug 运行就 ok

在linux系统中执行下面命令

[root@haima src]# go install github.com/go-delve/delve/cmd/dlv@latest
go: downloading github.com/go-delve/delve v1.21.0
…………………………

安装完成后,会生成 GOPATH\bin\dlv 文件
查看当前 dlv

[root@haima cobra]# go env | grep GOPATH
GOPATH='/home/code/go'
[root@haima cobra]# ll /home/code/go/bin/
总用量 17536
-rwxr-xr-x 1 root root 17953453 9月  16 20:56 dlv

查看 windows go 环境的 GOPATH

$ go env | grep GOPATH
set GOPATH=G:\site\go

linux 上的 /home/code/go/bin/dlv 复制到 windows 环境的 G:\site\go\bin\ 目标中

查看复制到 windows 后的 dlv 文件

Administrator@wanghaima-PC MINGW64 /g/site/go/bin
$ ls
dlv          

goland 打开 帮助-->编辑自定义属性
image

在弹出的文件中输入

dlv.path=G:/site/go/bin/dlv
image

保存重启 goland ide ,再 debug 就正常了

posted @ 2022-05-22 17:30  HaimaBlog  阅读(2905)  评论(0编辑  收藏  举报