2023年最新无脑安装 Go lang 环境配置并编写、运行、打包第一个 Golang 程序详细步骤,附带图文教程

本文涉及的产品
应用实时监控服务ARMS - 应用监控,每月50GB免费额度
函数计算FC,每月15万CU 3个月
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
简介: GO语言也称为Golang,由谷歌出品,随着云计算的发展而不断壮大,近年来,使用GO语言的程序员越来越多,GO程序员一般被称为GOpher。由于博主硬盘空间较为充足,不考虑移动软件安装目录,需要者请自行寻找方法,本文为无脑操作。

👏 Hi! 我是 Yumuing,一个技术的敲钟人

👨‍💻 每天分享技术文章,永远做技术的朝拜者

📚 欢迎关注我的博客:Yumuing's blog

GO语言也称为Golang,由谷歌出品,随着云计算的发展而不断壮大,近年来,使用GO语言的程序员越来越多,GO程序员一般被称为GOpher。GO语言在语法上与C语言相类似,GO语言有以下的特点:

  1. 开源 ,开源免费是很多程序员选择GO语言的原因之一;
  2. 跨平台 ,可以在windows,Linux,MacOS等平台使用;
  3. 独具一格的面向对象编程方式 通过结构类型+关联方法来实现面向编程的能力;
  4. 网络功能丰富 这个要慢慢体会;
  5. 程序可以直接在谷歌的网站上运行 在go playground,可以直接编写代码或把自己的代码粘贴上,然后运行,所以可以在不安装任何软件的情况下使用GO语言,也可以在以下网站运行。https://play.studygolang.com/
  6. 并发编程简洁 ;
  7. 丰富的标准库 ;

由于博主硬盘空间较为充足,不考虑移动软件安装目录,需要者请自行寻找方法,本文为无脑操作。

下载安装Golang

下载地址:所有版本 - Go 编程语言 (google.cn)

image-20230510190956335

点击特色安装下的第一个,进行下载即可。下载完成之后,执行安装文件,全部点击下一步即可,打开 cmd 命令行,输入 go version 弹出版本号,安装成功。

配置 Golang 环境

GO111MODULE

我们可以简单的理解为,在没有go modules机制时,go工程中对于第三方功能包的管理非常复杂,也非常专业,这就导致程序员在进行开发的时候,对于第三方功能包的管理很不方便,所以才有了go modules机制。这个机制的开关是通过GO111MODULE环境变量来配置的。

GO111MODULE=off,无模块支持,go命令行将不会支持module功能,寻找依赖包的方式将会沿用旧版本那种通过vendor目录或者GOPATH模式来查找。

GO111MODULE=on,模块支持,go命令行会使用modules,而一点也不会去GOPATH目录下查找。

GO111MODULE=auto,默认值,go命令行将会根据当前目录来决定是否启用module功能。这种情况下可以分为两种情形:

注:如果后面不需要使用,可以再将值设置为off。

GOPROXY

从字面意思就能看出,GOPROXY表示的是go的代理设置,之所以有这个环境变量,是因为go这种语言不像C语言,在C语言中,如果我们想要使用别人的第三方代码,一般有两种途径:

而在go语言中,类似于java,可以在编程时,引入第三方代码的库地址,比如git仓库,然后在编译的时候,IDE会自动的拉取第三方库文件到当前工程。
这样做虽然很方便,但是带来了一个问题:网速和限制
golang默认的GOPROXY是https://goproxy.io,这个是官方的设置,我们可以使用国内的代理,Windows下设置如下:,因为一些限制,我们不能很顺利的使用和下载这些仓库,这样就会导致下载缓慢或者失败,所以这个时候就需要一个代理来实现下载,这个代理就是中间商,可以跨过限制来访问。

golang默认的GOPROXY是https://goproxy.io,这个是官方的设置,我们可以使用国内的代理:https://goproxy.cn

开启 Go mod 模式及设置包下载国内镜像

  1. 打开高级系统设置

  2. 打开环境变量面板

    image

  3. 新建系统变量,变量名:GO111MODULE ;变量值:on

    image-20230510192528482

  4. 新建系统变量,变量名:GOPROXY ; 变量值:https://goproxy.cn

    image-20230510192546338

  5. 点击环境变量面板中的确认按钮以及高级系统设置确认按钮。

  6. 在 cmd 命令输入 go env,寻找对应变量是否设置成功,注意,不要使用设置环境变量前已打开的 cmd 窗口,存在缓存,极有可能显示设置不成功,需要新开一个 cmd 窗口,进行测试。

  7. 如果测试失败,请在 cmd 命令中分别输入

    • go env -w GOPROXY=https://goproxy.cn,direct
    • go env -w GO111MODULE=on

配置 Vscode Golang 环境

Vscode下载地址:https://vscode.cdn.azure.cn/stable/b4c1bd0a9b03c749ea011b06c6d2676c8091a70c/VSCodeUserSetup-x64-1.57.0.exe

  1. 执行安装文件,一直下一步即可完成安装。

  2. 打开 Vscode 软件,打开插件安装位置

    image(1)

  3. 搜索栏搜索 go 找到 Go 这个插件然后点击 Install 安装插件,如下图。

    image-20230510194640370

  4. 编写 HelloWord 程序进行测试

    点击 Vscode 最上面的按钮,选择 Open Folder 打开你想要的放置的代码目录,在 Vscode 中的目录文件夹的右边第一个,新建文件 hello.go,输入以下代码:

    package main
    
    import "fmt"
    
    func main() {
         
         
        fmt.Println("Hello Word!")
    }
    

    在放置代码的目录中打开 cmd 窗口:到对应文件夹的地址栏输入 cmd 即可打开 cd 到该文件夹的 cmd 窗口,输入go run hello.go 出现 Hello,Word!即为运行成功。安装 Vscode 成功。

  5. 构建 hello 项目

    在刚刚打开的 cmd 命令窗口中输入 go build hello.go,会出现 hello.exe 文件,即为项目文件,输入 hello 即可运行该文件。

Bug 集锦

The "gopls" command is not available.Run "go get -v golang.org/x/tools/gopls" to install.

image-20230510195412123

点击 install all 即可。显示如下即可。

image-20230510195821870

目录
相关文章
|
24天前
|
Unix Linux Go
Linux 使用Yum安装Go和配置环境
Linux 使用Yum安装Go和配置环境
|
2月前
|
Go
golang语言之go常用命令
这篇文章列出了常用的Go语言命令,如`go run`、`go install`、`go build`、`go help`、`go get`、`go mod`、`go test`、`go tool`、`go vet`、`go fmt`、`go doc`、`go version`和`go env`,以及它们的基本用法和功能。
41 6
|
2月前
|
存储 Go
Golang语言基于go module方式管理包(package)
这篇文章详细介绍了Golang语言中基于go module方式管理包(package)的方法,包括Go Modules的发展历史、go module的介绍、常用命令和操作步骤,并通过代码示例展示了如何初始化项目、引入第三方包、组织代码结构以及运行测试。
41 3
|
3月前
|
Ubuntu Go 开发工具
Unbuntu 一键安装制定版本的Go环境
该文章提供了在Ubuntu系统上一键安装指定版本的Go语言环境的详细步骤,包括删除旧版本Go、下载并解压新版本Go到指定目录、配置Go环境变量,以及安装其他必要的开发工具。
53 2
|
3月前
|
Go 开发者
|
3月前
|
Go 开发者
|
3月前
|
监控 Serverless Go
Golang 开发函数计算问题之Go 语言中切片扩容时需要拷贝原数组中的数据如何解决
Golang 开发函数计算问题之Go 语言中切片扩容时需要拷贝原数组中的数据如何解决
|
2月前
|
Go
Golang语言之管道channel快速入门篇
这篇文章是关于Go语言中管道(channel)的快速入门教程,涵盖了管道的基本使用、有缓冲和无缓冲管道的区别、管道的关闭、遍历、协程和管道的协同工作、单向通道的使用以及select多路复用的详细案例和解释。
94 4
Golang语言之管道channel快速入门篇
|
2月前
|
Go
Golang语言文件操作快速入门篇
这篇文章是关于Go语言文件操作快速入门的教程,涵盖了文件的读取、写入、复制操作以及使用标准库中的ioutil、bufio、os等包进行文件操作的详细案例。
60 4
Golang语言文件操作快速入门篇
|
2月前
|
Go
Golang语言之gRPC程序设计示例
这篇文章是关于Golang语言使用gRPC进行程序设计的详细教程,涵盖了RPC协议的介绍、gRPC环境的搭建、Protocol Buffers的使用、gRPC服务的编写和通信示例。
89 3
Golang语言之gRPC程序设计示例