vscode上搭建go开发环境详细完整过程
前言
Go语言介绍:
Go语言适合用于开发各种类型的应用程序,包括网络应用、分布式系统、云计算、大数据处理等。由于Go语言具有高效的并发处理能力和内置的网络库,它特别适合构建高并发、高性能的服务器端应用。以下是一些常见的Go语言应用开发领域:
- 网络应用开发:Go语言的轻量级线程(goroutine)和通道(channel)机制使得开发网络应用变得更加简单和高效,例如Web服务、API开发和微服务架构。
- 分布式系统开发:Go语言的并发模型和内置的RPC支持使得开发分布式系统变得更加容易,例如分布式数据库、消息队列、集群管理系统等。
- 云计算和容器技术:Go语言在云计算和容器技术领域有广泛应用,例如Kubernetes、Docker等。
- 大数据处理:Go语言的高并发和高性能特性使其适合用于大数据处理,例如流式处理、数据分析等。
总之,Go语言适合用于构建高性能和高并发的应用程序,特别适合用于服务器端开发和分布式系统。它的简洁语法和强大的标准库使得开发效率也得到了提高。
VSCode介绍:
VS Code是一款免费的开源代码编辑器,由Microsoft开发和维护。它可以在Windows、macOS和Linux等操作系统上运行,并支持多种编程语言和扩展。你可以免费下载和使用VS Code,没有任何费用。
Visual Studio Code 默认支持非常多的编程语言,包括 JavaScript、TypeScript、Vue、CSS 和 HTML;也可以通过下载扩展支持 Python、C/C++、Java 和 Go 在内的其他语言。支持功能包括语法高亮、括号补全、代码折叠和代码片段;对于部分语言,可以使用 IntelliSense。Visual Studio Code 也支持调试 Node.js 程序。
一.安装VsCode与Go插件
Vscode下载地址:https://code.visualstudio.com/download
也可通过360软件管家直接下载
Go安装包下载:
在VsCode上安装Go插件:
安装好Go和VsCode后,在vscode上搜索go,安装go插件。
二.使用github下载安装go的其他插件
2.1 环境变量:
GoPath环境变量:用于设置Go语言的工作空间目录。(请注意,Go 1.11版本及更高版本引入了Go模块(Go Modules)的概念,可以在任何目录下工作,而不需要依赖于GoPath环境变量)
GOROOT环境变量:用来指定Go语言的安装目录。它应该指向你安装Go语言的根目录。
2.2 创建目录:
在环境变量设置的目录下创建src、bin、pkg,在src目录下创建golang.org/x
进入C:\Users\FF\go\src\golang.org\x下,依次执行以下命令:
git clone https://github.com/golang/lint.git lint git clone https://github.com/golang/tools.git tools git clone https://github.com/golang/mod.git git clone https://github.com/golang/xerrors.git
(注意:C:\Users\FF\go\src\golang.org\x下应该是空目录,如果有存在与git下载重名目录,可能会导致下载失败)
命令都执行成功后,可以看到C:\Users\FF\go\src\golang.org\x下目录有以下子目录:
cd切换到src目录:C:\Users\FF\go\src下,再依次执行以下三条命令进行安装:
go install golang.org/x/lint/golint go install golang.org/x/tools/cmd/gorename go install golang.org/x/tools/cmd/guru
接下来按照github.com中的插件:
gocode(要更改名字),命令如下:
go get -u -v github.com/stamblerre/gocode cd …/bin ren gocode.exe gocode-gomod.exe
go get -u -v github.com/mdempsky/gocode go get -u -v github.com/rogpeppe/godef go get -u -v github.com/uudashr/gopkgs/cmd/gopkgs go get -u -v github.com/ramya-rao-a/go-outline go get -u -v github.com/acroca/go-symbols go get -u -v github.com/josharian/impl
go get -u -v github.com/derekparker/delve/cmd/dlv
或
切换到C:\Users\FF\go\src\github.com,执行:
git clone https://github.com/go-delve/delve.git go-delve/delve
切换到C:\Users\FF\go\src,执行安装命令:
go install github.com/go-delve/delve/cmd/dlv go get -u -v github.com/haya14busa/goplay/cmd/goplay
或
切换到C:\Users\FF\go\src\github.com,执行:
git clone https://github.com/haya14busa/goplay haya14busa/goplay git clone https://github.com/skratchdot/open-golang.git skratchdot/open-golang
切换到C:\Users\FF\go\src,执行安装命令:
go install github.com/haya14busa/goplay/cmd/goplay go get -u -v github.com/sqs/goreturns
或
切换到C:\Users\FF\go\src\github.com,执行:
git clone https://github.com/sqs/goreturns.git sqs/goreturns
切换到C:\Users\FF\go\src,执行安装命令:
go install github.com/sqs/goreturns
go get -u -v github.com/cweill/gotests/… go get -u -v github.com/fatih/gomodifytags go get -u -v github.com/davidrjenni/reftools/cmd/fillstruct go get -u -v github.com/godoctor/godoctor
或
切换到C:\Users\FF\go\src\github.com,执行:
git clone https://github.com/godoctor/godoctor.git godoctor/godoctor
切换到C:\Users\FF\go\src,执行安装命令:
go install github.com/godoctor/godoctor
都执行成功后,在bin目录下会生成以下exe文件(17个):
三.安装问题处理
问题1:git clone出现openssl问题
问题处理:
解除ssl验证:
git config --global http.sslVerify false
问题2:go install失败
问题处理:
go env:
它的值可以为on、off、空,当为on或空时,会开启模块支持,将会忽略GOPATH配置,所以解决方法就是将其改为off,输入如下命令:go env -w GO111MODULE=“off”
问题3:go install golang.org/x/tools/cmd/guru 失败
问题处理:git clone https://github.com/golang/sys.git
四.使用VSCode创建go项目
1)创建go项目文件夹
2)创建main.go文件
3)vscode打开go项目文件夹,打开main.go文件,编辑代码
4)使用以下命令初始化模块,并下载相关依赖
go mod init (module-name):
go mod init命令用于初始化当前目录为一个Go模块。它会创建一个go.mod文件,用于记录项目的依赖关系和版本信息。
go mod tidy
#下载依赖。我们需要将依赖下载至本地,而不是使用 go get
go mod download
#导入依赖。此命令会将刚才下载至 GOPATH 下的依赖转移至该项目根目录下的 vendor(自动新建) 文件夹下, 此时我们就可以使用这些依赖了
go mod vendor
// 复制依赖到 vendor 目录下
使用go build、go run等命令来构建和运行你的项目了。
VSCode中运行go程序:
总结
到此这篇关于vscode上搭建go开发环境的文章就介绍到这了,更多相关vscode搭建go开发环境内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
golang struct json tag的使用以及深入讲解
这篇文章主要给大家介绍了关于golang struct json tag的使用以及深入讲解,文中通过实例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2022-02-02
最新评论