搭建go开发环境、Go命令介绍

开发环境搭建

go下载地址         

1.安装配置git
https://www.git-scm.com/download/

配置环境变量,命令行输入git测试

2.安装golang。

对于Windows和macOS用户,直接双击即可安装,留意一下安装路径。

对于Linux用户,直接解压安装包即可,比如你打算把go安装到/usr/local目录下,则使用命令 tar zxvf goxxx.tar.gz –C /usr/local。这样go标准库及相关的可执行文件就安装到了 /usr/local/go 目录下,在后续的步骤中会把/usr/local/go  赋给GOROOT环境变量。

3.GOPATH。

在任意目录下创建一个空目录,将来用于存放go语言第三方库文件。比如你打算使用/data/go_path这个目录,则在Linux下使用命令mkdir -p /data/go_path。在GOPATH目录建3个子目录:src、bin、pkg。

4.配置环境变量。

把第2步和第3步生成的目录分别赋给GOROOT和GOPATH环境变量

对于Linux和Mac用户在 ~/.bashrc (或者  ~/.bash_profile )文件中追加以下几行

export GOROOT=/usr/local/go
export GOPATH=/data/go_path
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

然后再执行. source   ~/.bashrc (或者 source   ~/.bash_profile )

PATH环境变量下的可执行文件在任意目录下都可以直接访问。

 

对于Windows用户,编辑用户环境变量,新增GOROOT和GOPATH,把GOROOT/bin和GOPATH/bin添加到Path里。如下图  

在Windows下还可以通过go env -w来设置环境变量,默认GoPROXY配置是:GOPROXY=https://proxy.golang.org,direct,由于国内访问不到https://proxy.golang.org,所以我们需要换一个PROXY,这里推荐使用https://goproxy.iohttps://goproxy.cn

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

小的知识点:

1,GO111MODULE中,111 代表啥意思:1.11版本之后使用module来管理,不再依赖GOPATH。

2,使用使用go mod 管理库,需要科学的上外网。

 

vscode快捷键

快捷键位置

File->Preferences->Keyboard Shortcuts

常用快捷键

行注释 ctrl + /
块注释 shift+alt+a (可以修改为ctrl+shift+/)
ctrl+a 全选
ctrl+c 复制
ctrl+v 粘贴
ctrl+shift+k 删除行
ctrl+e查找文件
ctrl+shift+p 打开设置命令行

修改快捷键

  1. 打开快捷键 File->Preferences->Keyboard Shortcuts
  2. 双击要修改的快捷键
  3. 键盘输入想要使用的快捷键

goroot和gopath

goroot就是go安装的根目录,gopath就是go项目所在的路径,高版本go项目已经不再依赖gopath来管理项目,使用go mod来管理项目。

 

go env: 查看go环境信息,查看电脑上的GOPATH路径。

go env

 

go version: 查看go版本号。

go version

 

go doc: 查看go标准库或第三方库的帮助文档。

go doc fmt
go doc gonum.org/v1/gonum/stat

 

有很多网站支持在线编辑Go代码并查看运行结果,这里列举一些

https://play.golang.wiki

https://play.studygolang.com

https://goplay.space

https://goplay.tools

 

集成开发环境推荐GoLand和VSCode,后者是免费的。下载地址: https://code.visualstudio.com/

VSCode需要额外安装支持Go语言的插件,如下图

安装中文简体插件

点击左侧菜单栏最后一项管理扩展,在搜索框中输入chinese ,选中结果列表第一项,点击install安装。

安装完毕后右下角会提示重启VS Code,重启之后 VS Code就显示中文啦!

安装Code Runner插件

安装好Code Runner之后,打开你所要运行的文件,有多种方式来快捷地运行你的代码:

  • 键盘快捷键 Ctrl+Alt+N
  • 快捷键 F1 调出 命令面板, 然后输入 Run Code
  • 在编辑区,右键选择 Run Code
  • 在左侧的文件管理器,右键选择 Run Code
  • 右上角的运行小三角按钮

go常用命令

直接在终端中输入 go help 即可显示所有的 go 命令以及相应命令功能简介,主要有下面这些:

  • build: 编译包和依赖
  • clean: 移除对象文件
  • doc: 显示包或者符号的文档
  • env: 打印go的环境信息
  • bug: 启动错误报告
  • fix: 运行go tool fix
  • fmt: 运行gofmt进行格式化
  • generate: 从processing source生成go文件
  • get: 下载并安装包和依赖
  • install: 编译并安装包和依赖
  • list: 列出包
  • run: 编译并运行go程序
  • test: 运行测试
  • tool: 运行go提供的工具
  • version: 显示go的版本
  • vet: 运行go tool vet

go mod init

使用go module模式新建项目时,我们需要通过go mod init 项目名命令对项目进行初始化,该命令会在项目根目录下生成go.mod文件。例如,我们使用hello作为我们第一个Go项目的名称,先创建一个hello目录,再执行如下命令。

go mod init hello

第一个Go程序

package main

import (
    "fmt"
)

func main() {
    fmt.Println("Hello World!")
}

main()函数是Go程序的唯一入口,且main()函数必须位于package main中。fmt是Go标准库中的一个package,该package下有一个Println()函数用于输出字符串。Go语言会依次从以下3个目录里查找依赖包:

  1. 当前工作目录

  2. $GOPATH/pkg/mod

  3. $GOROOT/src

编译

go build命令表示将源代码编译成可执行文件。

在hello目录下执行:

go build

编译得到的可执行文件会保存在执行编译命令的当前目录下,如果是Windows平台会在当前目录下找到hello.exe可执行文件。

可在终端直接执行该hello.exe文件:

c:\desktop\hello>hello.exe
Hello World!

我们还可以使用-o参数来指定编译后得到的可执行文件的名字。

go build -o heiheihei.exe

go run

该命令本质上是先在临时目录编译程序然后再执行。

go run main.go

go install

go install表示安装的意思,它先编译源代码得到可执行文件,然后将可执行文件移动到GOPATH的bin目录下。因为我们GOPATH下的bin目录添加到了环境变量中,所以我们就可以在任意地方直接执行可执行文件了。

go install github.com/tinylib/msgp@latest

跨平台编译

默认我们go build的可执行文件都是当前操作系统可执行的文件,Go语言支持跨平台编译——在当前平台(例如Windows)下编译其他平台(例如Linux)的可执行文件。

Windows编译Linux可执行文件

如果我想在Windows下编译一个Linux下可执行文件,那需要怎么做呢?只需要在编译时指定目标操作系统的平台和处理器架构即可。

注意:无论你在Windows电脑上使用VsCode编辑器还是Goland编辑器,都要注意你使用的终端类型,因为不同的终端下命令不一样!!!目前的Windows通常默认使用的是PowerShell终端。

如果你的Windows使用的是cmd,那么按如下方式指定环境变量。

SET CGO_ENABLED=0  // 禁用CGO
SET GOOS=linux  // 目标平台是linux
SET GOARCH=amd64  // 目标处理器架构是amd64

如果你的Windows使用的是PowerShell终端,那么设置环境变量的语法为

$ENV:CGO_ENABLED=0
$ENV:GOOS="linux"
$ENV:GOARCH="amd64"

在你的Windows终端下执行完上述命令后,再执行下面的命令,得到的就是能够在Linux平台运行的可执行文件了。

go build

Windows编译Mac可执行文件

Windows下编译Mac平台64位可执行程序:

cmd终端下执行:

SET CGO_ENABLED=0
SET GOOS=darwin
SET GOARCH=amd64
go build

PowerShell终端下执行:

$ENV:CGO_ENABLED=0
$ENV:GOOS="darwin"
$ENV:GOARCH="amd64"
go build

Mac编译Linux可执行文件

Mac电脑编译得到Linux平台64位可执行程序:

CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build

Mac编译Windows可执行文件

Mac电脑编译得到Windows平台64位可执行程序:

CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build

Linux编译Mac可执行文件

Linux平台下编译Mac平台64位可执行程序:

CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build

Linux编译Windows可执行文件

Linux平台下编译Windows平台64位可执行程序:

CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build

Windows下VSCode切换cmd.exe作为默认终端

如果你打开VS Code的终端界面出现如下图场景(注意观察红框圈中部分),那么你的VS Code此时正使用powershell作为默认终端:

推荐你按照下面的步骤,选择cmd.exe作为默认的终端工具:

此时,VS Code正上方中间位置会弹出如下界面,参照下图挪动鼠标使光标选中后缀为cmd.exe的那一个,然后点击鼠标左键。

最后重启VS Code中已经打开的终端或者直接重启VS Code就可以了。

如果没有出现下拉三角,也没有关系,按下Ctrl+Shift+P,VS Code正上方会出现一个框,你按照下图输入shell,然后点击指定选项即可出现上面的界面了。

 

 

posted @ 2020-05-22 14:04  屠魔的少年  阅读(61)  评论(0)    收藏  举报