Goland是专为Go开发人员构建的跨平台IDE,功能非常强大,拥有强大的代码洞察力,帮助所有Go开发人员即时错误检测和修复建议,快速和安全的重构,一步撤销,智能代码完成,死代码检测和文档提示,让您创建快速,高效,可靠的代码。
linux服务器上的vim工具不能满足日常的go语言开发,该篇文章将介绍如何使用goland编辑与调试远程服务器上的go语言程序。

一、安装插件(可选)

需要安装插件,preference->plugins->remote hosts access。

说明:公司里下载的goland自带该插件,无需下载(链接:

http://toolcloud.huawei.com/toolmall/tooldetails/bafb9b44283242d280a54fe621546c5d) 。

二、创建项目

根据是否是go mod项目选择创建路径。

三、配置插件

1)建立远程连接
点击 tools->deployment->configuration…

2)配置服务器信息
填写远端服务器的ip和端口

3)选择根目录
选择需要开发的go项目根目录

4)建立目录映射

5)下载代码
先点击tools->deployment->borwse remote host

然后点击 download from here…,远程的代码就会下载本地。

6)自动同步(可选)
点击 tools->deployment->automatic upload(always)
自动同步代码功能会在当前代码编辑区失去焦点时自动保存并上传到远端服务器上。

7)开启Go Modules(可选)

点击 file->settings->go->go modules

正确配置GOPROXY代理,可以参考:http://mirrors.tools.huawei.com/

三、调试代码

1)远端服务器安装dlv
照着 github 上 delve 项目的安装说明操作,go mod模式下推荐使用第二种方式。
拉取最新 delve 项目代码到本地,编译安装:

# git clone https://github.com/derekparker/delve.git
# go mod download
# cd delve/cmd/dlv
# go build
# go install

2)goland Debug配置
本地进入IDE,在要调试的地方打上断点,然后run->debug->eidit configurations->添加remote主机信息。

3)远端服务器启动dlv
如我要对 main.go 这个项目debug,对main进行编译后,可以直接运行:

# dlv --listen=:2345 --headless=true --api-version=2 exec ./main

然后本地就收到了调试信息。

更多dlv使用方法请自行探索。

End~

本地GoLand编辑与调试远端服务器上的代码的更多相关文章

  1. 解放双手:如何在本地调试远程服务器上的Node代码

    写在前面 谈到node断点调试,目前主要有三种方式,通过node内置调试工具.通过IDE(如vscode).通过node-inspector,三者本质上差不多.本文着重点在于介绍 如何在本地通过nod ...

  2. Bootstrap做的HTML页面在本地IE打开正常,放到服务器上显示就不正常了

    <meta name="renderer" content="webkit"> <meta http-equiv="X-UA-Com ...

  3. SVN将一台服务器上的代码迁移到另一台服务器上

    由于我们出差,需要把svn服务器上的代码同步到我电脑上,自己各种百度折腾了快一天才弄好,下面来分享下我的具体思路和操作步骤.有2种方式:第一种方式:直接将本地自己dowm下来的代码导入到本地svn服务 ...

  4. 关于同步VSS服务器上的代码发生Eclipse里面的项目全部不见了

    有次在同步VSS服务器上的代码的时候突然发生了错误(同步的代码的项目竟然消失了)....如下图 Could not open the editor: The file does not exist. ...

  5. 使用pycharm调试远程服务器上的程序

    一.PyCharm实现远程调试代码 1. 和远程服务器建立连接,tools àDeploymentàConfiguration 2. 点击“+”号,按照远程服务器信息配置信息 点击“Advanced ...

  6. 码云git使用一(上传本地项目到码云git服务器上)

    主要讲下如果将项目部署到码云git服务器上,然后使用studio导入git项目,修改本地代码后,并同步到码云git上面. 首先:我们在码云上注册账号并登陆.官网(https://git.oschina ...

  7. 利用 jrebel 热部署\远程调试\远程热部署 springboot项目 服务器上的代码

    首先要在eclipse 中启用 启用以后在 resource 中生成了 rebel-remote.xml 然后build,把生成的jar包放到服务器上. 然后用下面的命令启动 java -agentp ...

  8. 总想自己动动手系列·2·本地和外网(Liunx服务器上部署的web项目)按照自定义的报文格式进行交互(完结篇)

    一.准备工作 (1)创建一个web-project工程,部署本地可正常访问,部署在云服务上可访问. (2)理解如何在web.xml文件中配置过滤器,和创建一个自定义的过滤器. (3)懂得如何打war包 ...

  9. 总想自己动动手系列·1·本地和外网(Liunx服务器上部署的web项目)按照自定义的报文格式进行交互(准备篇)

    一.准备工作 (1)有一台属于自己的云服务器,并成功部署和发布一个web项目(当然,本质上来说Java-Project也没问题),通过外网IP可以正常访问该web项目. 需要说明的是:任何web项目, ...

  10. 本地主机访问远程linux系统服务器上的jupyter notebook

    1,机器情况:服务器 centos python环境已经配置好了,在虚拟环境下安装了anaconda 并且在里面安装了jupyter notebook 2,主机是 windows     ipytho ...

随机推荐

  1. python超多常用知识记录

    在函数传参给变量**a,可以接收字典类型,当未传参默认空字典 set创建集合可以排重 while和for到参数未满足可以增加else cmp函数比较长度 divmod函数返回除数和余数结果 nonlo ...

  2. Mysql_索引总结笔记

    Mysql 索引总结 1. 聚簇索引 InnoDB 引擎使用的就是聚簇索引,就是主键的索引,是一种数据的存储方式.所有的数据都是存储在索引的叶子结点上(与MySAM 引擎不同,MySAM是传统方式), ...

  3. csp每日习题

    欢迎加入:qq群号:1054587486 做题链接:https://csp.ccf.org.cn/csp/index.action?_access_code=1584494752035 点击模拟考试进 ...

  4. R语言-tidyr和dplyr

    一.安装和加载 1.安装并加载tidyr和dplyr包 install.packages("tidyr") library(tidyr) install.packages(&quo ...

  5. this的指向问题、bind/call/apply改变this指向

    this的指向问题 全局作用域下的this指向 无论是否是严格模式,全局作用域下的this始终指向window 函数内部的this 严格模式下: function test() { 'use stri ...

  6. ProxySQL Cluster 概述

    文章转载自:https://blog.csdn.net/n88Lpo/article/details/79608639 前言 在ProxySQL 1.4.2 之前,ProxySQL 单点的解决方法有配 ...

  7. Beats: Filebeat和pipleline processors

    简要来说: 使用filebeat读取log日志,在filebeat.yml中先一步处理日志中的个别数据,比如丢弃某些数据项,增加某些数据项. 按照之前的文档,是在filebeat.yml中操作的,具体 ...

  8. ExecutorService、Callable、Future实现有返回结果的多线程原理解析

    原创/朱季谦 在并发多线程场景下,存在需要获取各线程的异步执行结果,这时,就可以通过ExecutorService线程池结合Callable.Future来实现. 我们先来写一个简单的例子-- pub ...

  9. 3_Nginx

    一. Nginx介绍 1.1 引言 为什么要学Nginx 问题1: 客户端到底要将请求发送给哪台服务器 问题2: 如果所有客户端的请求都发送给了服务器1 问题2: 客户端发送的请求可能是申请动态资源的 ...

  10. Allure的简单使用

    Allure的简单使用 1.Allure简介 简单的理解下,可以把Allure当成一个用于生成美观测试报告的开源工具,配合Pytest测试框架使用更佳. 也就是说,Allure是在Pytest执行测试 ...