百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

node可以用nvm快速切换版本,golang如何快速切换版本?用gvm就行

toyiye 2024-06-24 19:23 16 浏览 0 评论

使用 gvm 可以带来以下好处:


1. 快速切换 Golang 版本,方便进行版本测试和开发;

2. 可以在多个项目中同时使用不同版本的 Golang 包和工具,避免冲突;

3. 可以通过 gvm 管理不同版本的 Golang,方便安装、卸载和更新;

4. 可以自由选择 Golang 的镜像源,下载更快。


我使用的是win10 64位系统,所以只考虑windows,其他操作系统应该是类似的。gvm在windows下叫g。


# 一、下载


在 Windows 下,gvm 叫做 g,请在 https://github.com/voidint/g/releases 下载适合您系统的版本。例如,如果您的系统是 64 位的,可以下载 g1.5.0.windows-amd64.zip 文件。


# 二、解压

下载完成后,将压缩包解压到指定目录下(例如 D:\Downloads 目录),得到一个名为 g.exe 的文件。


# 三、配置gvm的环境变量

首先需要设置以下环境变量:

G_MIRROR=https://golang.google.cn/dl/
G_HOME=D:\gvm\.g
G_EXPERIMENTAL=true

其中,


G_MIRROR:设置 Golang 的下载镜像,这里使用了 Google 的镜像。

G_HOME:设置 gvm 安装的位置,我不喜欢设置在C盘。

G_EXPERIMENTAL:设置是否显示实验性版本。最好设置为true,否则会占用C盘。

# 四、配置go的环境变量

接下来需要设置 Golang 的环境变量,包括 GOPATH 和 GOROOT。

GOPATH=D:\mysetup\gopath
GOROOT=%G_HOME%\go

注意:


GOPATH 和 GOROOT 不能是同一个目录。

GOROOT 指向 G_HOME 目录下的 go 子目录。

除此之外,还可以设置其他环境变量,例如:

GO111MODULE=on
GOINSECURE=git.dsy.com
GOOS=windows
GOPRIVATE=git.dsy.com
GOPROXY=https://goproxy.cn,direct
CGO_ENABLED=0

您可以根据自己的需要进行修改。


# 五、配置Path的环境变量

为了方便使用gvm命令,将D:\Downloads放在系统Path环境变量中。

为了方便使用 Golang 工具和命令,需要将 GOPATH 和 GOROOT 加入到系统 Path 环境变量中:

Path=%GOPATH%\bin;%GOROOT%\bin;D:\Downloads

# 六、使用gvm


进入命令行工具,敲相关命令。

## 首先敲g命令,列出gvm相关命令列表:

g

从截图里可以看出有ls、ls-remote、use、install、uninstall、clean、self、help相关命令。


ls:列出已安装的版本

ls-remote:列出可供下载安装的远程版本

use:切换到指定的版本

install:下载并安装指定版本

uninstall:卸载指定版本

clean:从包下载目录中删除文件

self:修改gvm本身

help, h:显示命令列表或一个命令的帮助信息


## 列出已安装的版本,输入以下命令:

g ls


## 列出可供下载安装的远程版本,输入以下命令:

g ls-remote

## 安装指定版本的 Golang,目前没安装1.19,可以用命令安装1.19,命令如下:

g install 1.19
g ls

可以看到,现在已经安装了1.19版本,并且切换到1.19环境了。安装某个版本会自动切换到某个版本。


## 如果已经下载了某个版本,比如1.20.3,如何切换呢?用g use 1.20.3 命令就行,输入以下命令:

g use 1.20.3
g ls


需要使用的命令是g ls,g ls-remote,g install,g use。其他命令,比如卸载,你们就自己研究吧。


以上就是常用的 gvm 命令,在开发过程中,gvm 可以帮助我们快速切换不同版本的 Golang,并在不同的项目中使用不同的 Golang 包和工具。

福大大架构师每日一题java当死,golang当立。最新面试题,涉及golang,rust,mysql,redis,云原生,算法,分布式,网络,操作系统。466篇原创内容

公众号

相关推荐

为何越来越多的编程语言使用JSON(为什么编程)

JSON是JavascriptObjectNotation的缩写,意思是Javascript对象表示法,是一种易于人类阅读和对编程友好的文本数据传递方法,是JavaScript语言规范定义的一个子...

何时在数据库中使用 JSON(数据库用json格式存储)

在本文中,您将了解何时应考虑将JSON数据类型添加到表中以及何时应避免使用它们。每天?分享?最新?软件?开发?,Devops,敏捷?,测试?以及?项目?管理?最新?,最热门?的?文章?,每天?花?...

MySQL 从零开始:05 数据类型(mysql数据类型有哪些,并举例)

前面的讲解中已经接触到了表的创建,表的创建是对字段的声明,比如:上述语句声明了字段的名称、类型、所占空间、默认值和是否可以为空等信息。其中的int、varchar、char和decimal都...

JSON对象花样进阶(json格式对象)

一、引言在现代Web开发中,JSON(JavaScriptObjectNotation)已经成为数据交换的标准格式。无论是从前端向后端发送数据,还是从后端接收数据,JSON都是不可或缺的一部分。...

深入理解 JSON 和 Form-data(json和formdata提交区别)

在讨论现代网络开发与API设计的语境下,理解客户端和服务器间如何有效且可靠地交换数据变得尤为关键。这里,特别值得关注的是两种主流数据格式:...

JSON 语法(json 语法 priority)

JSON语法是JavaScript语法的子集。JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组JS...

JSON语法详解(json的语法规则)

JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔大括号保存对象中括号保存数组注意:json的key是字符串,且必须是双引号,不能是单引号...

MySQL JSON数据类型操作(mysql的json)

概述mysql自5.7.8版本开始,就支持了json结构的数据存储和查询,这表明了mysql也在不断的学习和增加nosql数据库的有点。但mysql毕竟是关系型数据库,在处理json这种非结构化的数据...

JSON的数据模式(json数据格式示例)

像XML模式一样,JSON数据格式也有Schema,这是一个基于JSON格式的规范。JSON模式也以JSON格式编写。它用于验证JSON数据。JSON模式示例以下代码显示了基本的JSON模式。{"...

前端学习——JSON格式详解(后端json格式)

JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScriptProgrammingLa...

什么是 JSON:详解 JSON 及其优势(什么叫json)

现在程序员还有谁不知道JSON吗?无论对于前端还是后端,JSON都是一种常见的数据格式。那么JSON到底是什么呢?JSON的定义...

PostgreSQL JSON 类型:处理结构化数据

PostgreSQL提供JSON类型,以存储结构化数据。JSON是一种开放的数据格式,可用于存储各种类型的值。什么是JSON类型?JSON类型表示JSON(JavaScriptO...

JavaScript:JSON、三种包装类(javascript 包)

JOSN:我们希望可以将一个对象在不同的语言中进行传递,以达到通信的目的,最佳方式就是将一个对象转换为字符串的形式JSON(JavaScriptObjectNotation)-JS的对象表示法...

Python数据分析 只要1分钟 教你玩转JSON 全程干货

Json简介:Json,全名JavaScriptObjectNotation,JSON(JavaScriptObjectNotation(记号、标记))是一种轻量级的数据交换格式。它基于J...

比较一下JSON与XML两种数据格式?(json和xml哪个好)

JSON(JavaScriptObjectNotation)和XML(eXtensibleMarkupLanguage)是在日常开发中比较常用的两种数据格式,它们主要的作用就是用来进行数据的传...

取消回复欢迎 发表评论:

请填写验证码