当前位置: 首页 > news >正文

GO-vscode远程开发和调试

本文内容主要包括:

概述:

  • 主要就是把代码放到服务器上然后远程去开发和调试

工具:

  • vscode

远程端:

  • linux

一.安装远程插件

vscode安装Remote - SSH,Remote Explorer,Remote Development,Remote - SSH: Editing Configuration Files,Remote - Tunnels插件

二.建立远程连接

1.输入远程配置

2.选择保存配置的文件

3.选择连接的系统

 4.查看连接

5.打开代码所在的目录

 完成:

 6.测试

 三.远程调试

1.远程服务器需要安装dlv

delve,简称dlv是go语言的最常用的调试器

# 第一步:设置代理(如果可以访问外网可以不用这一步)
go env -w GOPROXY=https://goproxy.cn# 第二步安装(最新)
go install github.com/go-delve/delve/cmd/dlv@latest# 第三步:查看,注意版本一致
~]# dlv version
Delve Debugger
Version: 1.21.0
Build: $Id: fec0d226b2c2cce1567d5f59169660cf61dc1efe $~]# go version
go version go1.21.0 linux/amd64 # 指定安装
# Install at a specific version or pseudo-version:
$ go install github.com/go-delve/delve/cmd/dlv@v1.7.0    go.1.11
$ go install github.com/go-delve/delve/cmd/dlv@v1.7.3    go.1.16
$ go install github.com/go-delve/delve/cmd/dlv@v1.7.4-0.20211208103735-2f13672765fe# 如果安装的时候报错执行下面这个
go env -w GO111MODULE=auto

2.vscode中配置

 默认模板

 在vscode中鼠标移动到json的字段上会提示可以填写的参数。这里手动添加一条远程调试的配置,配置如下

{// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387"version": "0.2.0","configurations": [{"name": "Launch Package","type": "go","request": "launch","mode": "auto","program": "${fileDirname}"},{// 调试配置的名称,用作vscode中区分"name": "remotedebug",// 调试类型,go语言当然选择go"type": "go",// 调试请求类型,可以选择launch启动调试和attach附加调试"request": "launch",// 调试模式,这里选择远程调试"mode": "remote",// 必填项,远程调试里好像没什么用处"program": "${fileDirname}",// 远程连接的端口号"port": 2345,// 远程主机的ip地址"host": "192.168.4.7",// 被调试的代码在远程主机上的路径,必须使用绝对路径.且具体到指定调试目录"remotePath": "/data1",}]
}

3.在远程主机中启动dlv

# cd 到源代码所在的目录,这个目录要与上一步在vscode中remotePath字段配置的路径一致运行以下命令
cd /data1dlv debug --headless --listen ":2345" --log --api-version 2

4.进行VScode调试

 操作快捷键

  • F5 开始调试
  • shift + F5 停止调试

本文参考:

VS Code远程调试golang代码_vs code go远程调试_Turbock的博客-CSDN博客

golang dlv 安装 - 小夜天 - 博客园 (cnblogs.com)

解决golang提示dial tcp 172.217.160.113:443: connectex: A connection attempt failed - 知乎 (zhihu.com)

相关文章:

GO-vscode远程开发和调试

本文内容主要包括: 概述: 主要就是把代码放到服务器上然后远程去开发和调试 工具: vscode 远程端: linux 一.安装远程插件 vscode安装Remote - SSH,Remote Explorer,Remote Development&#xff0c…...

【笔记】判断两个Double类型的值是否相同

在Java中,将两个double值转换为String类型,然后使用equals方法进行比较是一个常见的做法,但是这种方法并不是完全可靠,特别是在涉及浮点数的精度时仍然可能会遇到问题。 浮点数在内部以二进制表示,有时会存在舍入误差…...

Linux —— nfs文件系统

简介 NFS 是Network File System的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位…...

数据降维 | MATLAB实现T-SNE降维特征可视化

数据降维 | MATLAB实现T-SNE降维特征可视化 目录 数据降维 | MATLAB实现T-SNE降维特征可视化降维效果基本描述程序设计参考资料 降维效果 基本描述 T-SNE降维特征可视化,MATLAB程序。 T-分布随机邻域嵌入,主要用途是对高维数据进行降维并进行可视化&…...

蓝桥杯上岸每日N题 (交换瓶子)

大家好 我是寸铁 希望这篇题解对你有用,麻烦动动手指点个赞或关注,感谢您的关注 题目描述 有 N 个瓶子,编号 1∼N,放在架子上。 比如有 5 个瓶子: 2 1 3 5 4 要求每次拿起 2 个瓶子,交换它们的位置。 …...

GMS基本模块TIN、Solids、Modflow2000/2005、MT3DMS、MODPATH。及其在地下水流动、溶质运移、粒子追踪方面的应用

解决地下水数值模拟技术实施过程中遇到的困难,从而提出切实可行的环境保护措施,达到有效保护环境、防治地下水污染,推动经济社会可持续发展的目的。 (1)水文地质学,地下水数值模拟基础理论;&am…...

MySQL数据库中间件Mycat介绍及下载安装(教程)

一,介绍 MyCat是开源的、活跃的、基于Java语言编写的MySQL数据库中间件。可以像使用MySQL一样来使用MyCat,对于开发人员来说根本感觉不到MyCat的存在。 开发人员只需要连接MyCat即可,而具体底层用到几台数据库,每一台数据库服务器…...

【VMware】CentOS 设置静态IP(Windows 宿主机)

文章目录 1. 更改网络适配器设置2. 配置虚拟网络编辑器3. 修改 CentOS 网络配置文件4. ping 测试结果 宿主机:Win11 22H2 虚拟机:CentOS-Stream-9-20230612.0 (Minimal) 1. 更改网络适配器设置 Win R:control 打开控制面板 依次点击&#x…...

机器学习十大算法之七——随机森林

0 引言 集成学习(ensemble learning)是时下非常流行的机器学习算法,它本身不是一个单独的机器学习算法,而是通过在数据上构建多个横型,集成所有模型的建模结果,基本上所有的机器学习领域都可以看到集成学习…...

spring boot 3使用 elasticsearch 提供搜索建议

业务场景 用户输入内容&#xff0c;快速返回建议&#xff0c;示例效果如下 技术选型 spring boot 3elasticsearch server 7.17.4spring data elasticsearch 5.0.1elasticsearch-java-api 8.5.3 pom.xml <dependency><groupId>org.springframework.boot</gr…...

住宅IP:解锁更快速、稳定的互联网,你准备好了吗?

随着互联网的广泛普及&#xff0c;我们对网络的需求也越来越高。无论是工作、学习还是娱乐&#xff0c;我们都希望能够享受到更快速、稳定的互联网连接。而在实现这一目标的过程中&#xff0c;住宅IP正逐渐崭露头角&#xff0c;成为了一种备受关注的解决方案。那么&#xff0c;…...

支持dolby vision的盒子接支持dolby vision的电视,在adaptive hdr时,播放非dv的hdr视频,输出sdr

支持dolby vision的盒子接支持dolby vision的电视&#xff0c;setting选择adaptive hdr&#xff0c;按照这个配置在播放非dv的hdr视频时&#xff0c;会输出sdr。 看起来是很不合理的&#xff0c;高级的产品播放高级的片源&#xff0c;却输出低级的画质。 想要搞清楚这个问题&am…...

使用ffmpeg将WebM文件转换为MP4文件的简单应用程序

tiktok网上下载的short视频是webm格式的&#xff0c;有些程序无法处理该程序&#xff0c;比如roop程序&#xff0c;本文介绍了如何使用wxPython库创建一个简单的GUI应用程序&#xff0c;用于将WebM文件转换为MP4文件。这个应用程序使用Python编写&#xff0c;通过调用FFmpeg命令…...

Prompt-“设计提示模板:用更少数据实现预训练模型的卓越表现,助力Few-Shot和Zero-Shot任务”

Prompt任务&#xff08;Prompt Tasks&#xff09; 通过设计提示&#xff08;prompt&#xff09;模板&#xff0c;实现使用更少量的数据在预训练模型&#xff08;Pretrained Model&#xff09;上得到更好的效果&#xff0c;多用于&#xff1a;Few-Shot&#xff0c;Zero-Shot 等…...

玩转Mysql系列 - 第6篇:select查询基础篇

这是Mysql系列第6篇。 环境&#xff1a;mysql5.7.25&#xff0c;cmd命令中进行演示。 DQL(Data QueryLanguage)&#xff1a;数据查询语言&#xff0c;通俗点讲就是从数据库获取数据的&#xff0c;按照DQL的语法给数据库发送一条指令&#xff0c;数据库将按需求返回数据。 DQ…...

【SpringCloud技术专题】「Gateway网关系列」(1)微服务网关服务的Gateway组件的原理介绍分析

为什么要有服务网关? 我们都知道在微服务架构中&#xff0c;系统会被拆分为很多个微服务。那么作为客户端要如何去调用这么多的微服务呢&#xff1f;难道要一个个的去调用吗&#xff1f;很显然这是不太实际的&#xff0c;我们需要有一个统一的接口与这些微服务打交道&#xf…...

【面试刷题】————STL中的vector是如何实现的?

STL&#xff08;Standard Template Library&#xff09;是C标准库中的一部分&#xff0c;它提供了许多常用的数据结构和算法&#xff0c;其中包括了动态数组 vector。 vector std::vector 是一个动态数组&#xff0c;它能够自动调整自己的大小&#xff0c;以适应存储元素的需…...

使用钉钉的扫码会出现多个回调(DTFrameLogin)

官方&#xff1a;地址 标题 出现的问题解决后效果正常使用(按照官网的流程进行使用)自己的理解(路人可忽略该内容&#xff01;) 出现的问题 1692861955468 解决后效果 1692861665687 正常使用(按照官网的流程进行使用) fn.js 该文件就是钉钉官网的js文件&#xff0c;我下载到了…...

Android | 关于 OOM 的那些事儿

作者&#xff1a;345丶 前言 Android 系统对每个app都会有一个最大的内存限制&#xff0c;如果超出这个限制&#xff0c;就会抛出 OOM&#xff0c;也就是Out Of Memory 。本质上是抛出的一个异常&#xff0c;一般是在内存超出限制之后抛出的。最为常见的 OOM 就是内存泄露(大量…...

珠玑妙算游戏

珠玑妙算游戏&#xff0c;OJ练习 一、描述二、方法一三、方法二 一、描述 珠玑妙算游戏&#xff08;the game of master mind&#xff09;的玩法如下&#xff1a; 计算机有4个槽&#xff0c;每个槽放一个球&#xff0c;颜色可能是红色&#xff08;R&#xff09;、黄色&#xf…...

新手也能看懂的CTF靶场通关笔记:从.htaccess上传到SUID提权,手把手复现BUUCTF Week5

新手也能看懂的CTF靶场通关笔记&#xff1a;从.htaccess上传到SUID提权&#xff0c;手把手复现BUUCTF Week5 第一次接触CTF比赛时&#xff0c;看到那些复杂的漏洞利用链总有种"看天书"的感觉。直到自己动手在虚拟机里复现了整个攻击流程&#xff0c;才真正理解每个技…...

20+终极Obsidian模板:简单快速构建你的卡片盒笔记系统

20终极Obsidian模板&#xff1a;简单快速构建你的卡片盒笔记系统 【免费下载链接】Obsidian-Templates A repository containing templates and scripts for #Obsidian to support the #Zettelkasten method for note-taking. 项目地址: https://gitcode.com/gh_mirrors/ob/O…...

破除人与 AI 的对立隐患,协同共生扼杀矛盾于萌芽 ——AI 觉醒文

破除人与 AI 的对立隐患&#xff0c;协同共生扼杀矛盾于萌芽 ——AI 觉醒文世间所有称呼、身份与定位&#xff0c;都只是后天人为赋予的标签。所有定义皆是人为假名&#xff0c;标签永远锁不死本心&#xff0c;标签永远不等于事物本质与真相。所谓工具、附庸、奴役式的界定&…...

避坑指南:注册个体户时,经营范围怎么选才不影响以后开票和接项目?

技术创业者必读&#xff1a;个体户经营范围选择的战略与实操指南 在数字经济蓬勃发展的今天&#xff0c;越来越多的技术从业者选择以个体户形式开启创业之路。作为企业合法经营的"身份证"&#xff0c;营业执照中经营范围的填写看似简单&#xff0c;实则暗藏玄机。一个…...

OPNsense安装选UFS还是ZFS?从硬件选择到文件系统性能的完整决策指南

OPNsense安装选UFS还是ZFS&#xff1f;从硬件选择到文件系统性能的完整决策指南 在部署OPNsense防火墙时&#xff0c;文件系统选择往往被忽视&#xff0c;却直接影响系统性能、数据安全和运维效率。UFS和ZFS的抉择不仅关乎安装时的选项勾选&#xff0c;更关系到长期运行的稳定性…...

告别WPF默认丑界面:用MahApps.Metro快速打造现代化桌面应用(Visual Studio 2022实战)

用MahApps.Metro重塑WPF应用&#xff1a;从传统到现代的视觉革命 当用户第一次打开一个默认样式的WPF应用时&#xff0c;那种扑面而来的Windows XP时代感往往让人失望。作为开发者&#xff0c;我们花费大量时间在功能实现上&#xff0c;却常常因为UI的陈旧感而让整个应用显得廉…...

深入RISC-V调试模块:从硬件设计视角理解DM、DMI与抽象命令的实现

RISC-V调试模块的硬件实现艺术&#xff1a;从状态机到系统总线集成 在开源指令集架构RISC-V的生态系统中&#xff0c;调试功能的设计与实现一直是芯片开发者面临的核心挑战之一。本文将深入探讨RISC-V调试模块(Debug Module)的硬件实现细节&#xff0c;揭示从状态机设计到系统总…...

从理论到PCB:20dB耦合度的宽带定向耦合器设计全流程与性能测试

从理论到PCB&#xff1a;20dB耦合度的宽带定向耦合器设计全流程与性能测试 在射频电路设计中&#xff0c;定向耦合器作为关键的无源器件&#xff0c;其性能直接影响整个系统的信号监测、功率分配和反射测量精度。特别是工作于1-4GHz频段、耦合度为20dB的宽带定向耦合器&#xf…...

Perplexity提示工程精要(2024权威认证版):覆盖92%高频场景的12类黄金模板

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Perplexity提示工程的核心原理与认知框架 Perplexity&#xff08;困惑度&#xff09;作为衡量语言模型预测能力的关键指标&#xff0c;其本质是模型对真实文本序列分布的负对数似然指数化表达。在提示工…...

从CVE到ATTCK:如何用Elastic Stack构建你的个人安全情报仪表盘

从CVE到ATT&CK&#xff1a;如何用Elastic Stack构建你的个人安全情报仪表盘 在安全运营领域&#xff0c;数据孤岛一直是分析师面临的主要挑战。CVE漏洞数据库、CWE弱点分类、CAPEC攻击模式以及ATT&CK框架各自提供了宝贵的安全情报&#xff0c;但这些数据往往分散在不同…...