概述
详细代码请点击github代码
实验目的
基于云的服务计算的程序编写以GO语言较优,而上次实验中搭建私有云的Centos虚拟机和Windows系统需要配置相关go语言开发环境,此次实验即介绍如何在两个系统中搭建go语言环境
实验流程
- 安装Visual Code Studio
- 安装golang
- 安装git
- vscode安装go工具
实验内容
CentoS搭建GO语言环境
-
下载Visual Studio Code,命令行输入以下指令
$ sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc $ sudo sh -c 'echo -e "[code]nname=Visual Studio Codenbaseurl=https://packages.microsoft.com/yumrepos/vscodenenabled=1ngpgcheck=1ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'
鉴于Centos版本,其后输入以下指令
$ yum check-update $ sudo yum install code
等待安装完成后,在“所有应用程序”中可以找到Visual Studio Code
-
安装golang
- 安装
输入以下指令即可安装
可以用$ sudo yum install golang
$go version
验证是否安装成功,输出下图信息即可
- 设置环境变量
!注意!此步骤不能进入$ su root下输入指令,否则$HOME对应/root而非/home/user,后续vscode操作不能正常完成- 创建工作环境
$ mkdir $HOME/gowork
- 配置环境变量,此步骤需要在~/.profile文件下添加信息,可以用gedit或vim编辑,若想直接编辑文件,发现对应路径目录下并无.profile文件,原因在于该文件为隐藏文件,需要在右上角处设置点击
Show Hidden Files
即可,即下图
- 该文件为空,因此需要创建,也可以在.bash_profile中添加,添加以下内容
export GOPATH=$HOME/gowork export PATH=$PATH:$GOPATH/bin
- 利用
soure
命令应用配置,即
$ source $HOME/.profile
输入指令$ go env
可以查看配置是否生效,若生成下图配置,即完成,即对应的GOPATH,GOROOT路径为/home/user即可,若为/root,注意看是否在应用配置下进入了内核模式#,若是重新回到用户模式应用即可
- 安装
-
安装git
- 输入指令
$ su yum install git
即可
- 输入指令
-
vscode安装go工具
- 首先, 在
$GOPATH
目录下创建bin,src文件夹,并在src文件夹下创建github.com、golang.org文件夹,在golang.org文件夹下创建x文件夹, 利用如下指令即可一步创建
mkdir $GOPATH/src/golang.org/x/ -p mkdir $GOPATH/src/github.com/user -p
- 进入x文件夹,输入如下指令下载tools、lint包
git clone https://github.com/golang/tools.git tools git clone https://github.com/golang/lint.git lint
- 输入完成后,在x文件夹下可以看到tools、lint文件夹。
- github.com/user/目录下创建一个go文件,在尝试运行时vscode右下角会提示安装,点击install ALL,自动安装go语言的一些工具,某些插件会安装失败,而我恰好几乎全部都失败,即下图所示
- 因此在x文件夹下分别输入以下指令
go get -u -v golang.org/x/tools/cmd/gorename go get -u -v golang.org/x/tools/cmd/guru
- 在
$GOPATH
路径下输入以下指令
go get -u -v github.com/josharian/impl go get -u -v github.com/mdempsky/gocode go get -u -v github.com/rogpeppe/godef go get -u -v github.com/golang/lint/golint go get -u -v github.com/lukehoban/go-find-references go get -u -v github.com/lukehoban/go-outline go get -u -v github.com/sqs/goreturns go get -u -v github.com/tpng/gopkgs go get -u -v github.com/newhook/go-symbols go get -v -u github.com/peterh/liner github.com/derekparker/delve/cmd/dlv
- 等待完成后会发现在bin和github.com文件夹下出现下图内容,即安装完成
- 安装过程中可能失败,看到报错内容时会发现提示所在所处路径下未能找到文件,观察路径其中
$GOPATH
中为/home/user/go
,而非/home/user/gowork
,原因不清楚,但在vscode终端中输入export GOPATH=/home/user/gowork
然后重新输入指令即可
- 首先, 在
-
测试运行
- 按照实验文档,在github.com/user下创建hello文件夹,创建hello.go文件并输入以下内容:
package main import ( "fmt" "github.com/user/stringutil" ) func main() { fmt.Printf(stringutil.Reverse("!oG ,olleH")) }
- 在githug.com/user下创建stringutil文件夹,并创建reverse.go文件,输入以下内容
package stringutil func Reverse(s string) string { r := []rune(s) for i, j := 0, len(r)-1; i < len(r)/2; i, j = i+1, j-1 { r[i], r[j] = r[j], r[i] } return string(r) }
- 在
gowork
文件夹下输入go install github.com/user/hello
后输入hello
指令运行结果,由于PATH的路径问题,可能需要在中断输入export PATH="./bin:$PATH"
命令才可以直接在gowork
文件夹下运行,否则需要进入bin
文件夹下,输出结果如下:
- 在
stringutil
文件下创建go语言自带的测试文件reverse_test.go,输入以下内容
package stringutil import "testing" func TestReverse(t *testing.T) { cases := []struct { in, want string }{ {"Hello, world", "dlrow ,olleH"}, {"Hello, 世界", "界世 ,olleH"}, {"", ""}, } for _, c := range cases { got := Reverse(c.in) if got != c.want { t.Errorf("Reverse(%q) == %q, want %q", c.in, got, c.want) } } }
-
并在stringutil中执行
go test
或执行go test github.com/user/stringutil
指令,由于centos下的测试数据是我自己设立的,因此返回fail,如果是复制测试代码,则应返回ok。
-
关于Centos的go语言环境配置到此结束
Windows下GO环境配置
- 安装GO语言
- 直接从官网中下载一路next即可。
- 配置环境变量
- 首先创建文件夹,其后在系统环境变量,用户变量添加
GOPATH
(即gowork文件夹路径)和在系统变量PATH中添加$GOPATH/bin
- 首先创建文件夹,其后在系统环境变量,用户变量添加
- vscode配置
- Windows系统vscode中的文件夹、插件等创建安装同Centos,但需要注意创建配置文件
.vscode
,其中需要更改launch.json
和settings.json
中配置,分别如下
- Windows系统vscode中的文件夹、插件等创建安装同Centos,但需要注意创建配置文件
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch",
"type": "go",
"request": "launch",
"mode": "debug",
"remotePath": "",
"port": 2345,
"host": "127.0.0.1",
"program": "${fileDirname}",
"env": {
"GOPATH":"C:\Users\95255\Documents\vscode Code\go"
},
"args": [],
"showLog": true
}
]
}
{
"files.autoSave":"onFocusChange",
"go.buildOnSave": true,
"go.lintOnSave": true,
"go.vetOnSave": true,
"go.buildFlags": [],
"go.lintFlags": [],
"go.vetFlags": [],
"go.useCodeSnippetsOnFunctionSuggest": false,
"go.formatTool": "goreturns",
"go.goroot": "C:\go",
"go.gopath": "C:\Users\95255\Documents\vscode Code\go"
}
- 测试环境
- 同centos,但可以在hello.go文件下直接点击
start debugging
,输出下图指令(也可在终端输入go run
指令运行
- 输入
go test
指令,由于windows版本下的测试是直接复制测试代码的,因此输出内容为
- 因此,Windows下GO环境配置完成
- 同centos,但可以在hello.go文件下直接点击
最后
以上就是追寻煎蛋为你收集整理的《Go语言vscode环境配置》实验报告实验目的实验流程实验内容的全部内容,希望文章能够帮你解决《Go语言vscode环境配置》实验报告实验目的实验流程实验内容所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复