mac vscode 配置golang
配置环境变量
打开terminal
1 cd ~进入用户主目录,
2 ls -all查看是否存在.bash_profile
3 vim .bash_profile打开并编辑该文件
4 根据自己的实际情况配置路径,我配置到了外置硬盘中
export GOPATH=/Volumes/gnhxsk/mygo
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOBIN
GOPATH:日常开发的根目录,Go从1.1版本到1.7版本必须设置这个变量,而且不能和Go的安装目录一样,这个目录用来存放Go源码,Go的可运行文件,以及相应的编译之后的包文件。所以,这个目录下面有三个子目录:src、bin、pkg
src 存放源代码(比如:.go .c .h .s等)
pkg 编译后生成的文件(比如:.a)
bin 编译后生成的可执行文件((为了方便,可以把此目录加入到 $$PATH 变量中,如果有多个gopath,那么使用${GOPATH//://bin:}/bin添加所有的bin目录))
GOPATH允许多个目录,当有多个目录时,请注意分隔符,多个目录的时候Windows是分号,Linux系统是冒号,当有多个GOPATH时,默认会将go get的内容放在第一个目录下。
以上 $GOPATH 目录约定有三个子目录:
GOBIN:是GOPATH下的bin目录 go install 编译后产生的二进制文件放在这个目录
PATH:环境变量。需要gobin目录加入到path路径下,生成可执行文件就可以直接运行了。
执行下面的命令完成对golang环境变量的配置。
source ~/.bash_profile
Go env查看配置后的效果
Hellow World
src目录是开发程序的主要目录,所有的源码是放在这个目录下面。
例如:$GOPATH/src/mymath表示mymath这个应用包或者可执行应用,这个是根据package是main还是其他来决定,main的话是可执行应用,其他的话就是应用包.
1 执行如下代码,在src文件夹下创建mymath文件夹
cd $GOPATH/src
mkdir mymath
2 新建文件sqrt.go
package mymath
func Sqrt(x float64) float64{z := 0.0for i := 0; i < 1000; i ++{z -= (z * z - x) / (2 * x)}return z
}
3 编译应用
3.1 进入对应的应用包目录。然后执行go install,安装
3.2 在任意目录下执行go install mymath
,安装
安装完成之后,可以进入如下目录,查看应用包
cd $GOPATH/pkg/${GOOS}_${GOARCH}
ls
mymath.a
4 调用应用包
4.1 新建应用包
cd $GOPATH/src
mkdir mathapp
cd mathapp
vim mian.go
main.go源码:
package main
import("mymath""fmt"
)
func main(){fmt.Printf("Hello,world. Sqrt(2) = %v\n",mymath.Sqrt(2))
}
4.2 编译程序
进入该应用目录,然后执行go build,那么在该目录下面会生成一个mathapp的可执行文件
./mathapp
输出如下内容
Hello,world. Sqrt(2) = 1.414213562373095
4.3 安装该应用
进入该目录执行go install,那么在$GOPATH/bin下增加了一个可执行文件mathapp,在terminal中输入如下命令可以执行
mathapp
也可以输出如下内容
Hello,world. Sqrt(2) = 1.414213562373095
安装VS Code
- 1 到https://code.visualstudio.com下载Visual Studio Code,直接使用
- 2 安装Go插件
- 2.1 点击右边的Extensions图标,搜索Go插件,选择Go进行安装,安装之后,系统会提示重启Visual Studio
- 2.2 可以打开自动保存功能。开启方法:选择菜单File,勾选
- 2.3 用户设置
在顶部菜单选择Code->首选项->设置
{"files.autoSave": "off","go.buildOnSave": true,"go.lintOnSave": true,"go.vetOnSave": true,"go.buildFlags": [],"go.lintFlags": [],"go.vetFlags": [],"go.coverOnSave": false,"go.useCodeSnippetsOnFunctionSuggest": false,"go.formatOnSave": true,"go.formatTool": "goreturns","go.goroot": "/usr/local/go",// 你的Goroot"go.gopath": "/Volumes/gnhxsk/mygo",// 你的Gopath
}
2.4 安装依赖包支持
* 自动安装:选择一个.go文件拖进入VS Code,然后VS Code会提示你安装依赖包,选择install all即可
* 手动安装:打开terminal,执行以下命令
go get -u -v github.com/nsf/gocode
go get -u -v github.com/rogpeppe/godef
go get -u -v github.com/zmb3/gogetdoc
go get -u -v github.com/golang/lint/golint
go get -u -v github.com/lukehoban/go-outline
go get -u -v sourcegraph.com/sqs/goreturns
go get -u -v golang.org/x/tools/cmd/gorename
go get -u -v github.com/tpng/gopkgs
go get -u -v github.com/newhook/go-symbols
go get -u -v golang.org/x/tools/cmd/guru
go get -u -v github.com/cweill/gotests/...代码着彩色
代码自动完成(使用gocode)
代码片段
快速提示信息(使用godef)
跳转到定义(使用godef)
搜索参考引用(使用go-find-references)
文件大纲(使用go-outline)
重命名(使用gorename)
保存构建(使用go build和go test)
代码格式化(使用goreturns或goimports或gofmt)
调试代码(使用delve)
5.2.5 Visual Studio Code支持Go语言调试
执行以下命令:
go get -v -u github.com/peterh/liner github.com/derekparker/delve/cmd/dlv
brew install go-delve/delve/delve
go get -v -u github.com/peterh/liner github.com/derekparker/delve/cmd/dlv
修改“dlv-cert”证书
1.打开“钥匙串访问”
2.打开菜单->钥匙串访问->证书助理->创建证书
3.名称:dlv-cert 身份类型:自签名证书 证书类型:代码签名 并选择“让我覆盖这些默认值”
4.单击“继续”,有限期(天数):365,可以自己修改,3650
5.一直继续,直到看到“指定用于该证书的位置”钥匙串,选择“系统”并单击“创建”按钮
6.重启Finder,再打开“钥匙串访问”,选择“系统”,就会看到创建好的“dlv-cert”证书
7.右键”dlv-cert”证书,选择“显示简介->信任->代码签名”修改为:始终信任
8.打开terminal,进入到之前安装好的$GOPATH/src目录下的dlv源码文件目录:github.com/derekparker/delve
9.输入如下命令就可以重新编译出一个带代码签名的dlv执行程序GO15VENDOREXPERIMENT=1 CERT=dlv-cert make install
一定要安装 Xcode Command Line Tools 才能使用dlv
xcode-select --install
go语言学习资料
1.go指南:官网链接:https://go-tour-zh.appspot.com/welcome/1(需要梯子),如果无法打开请用国内链接:http://tour.studygolang.com/
2.《the way to go》,如果看英文感觉吃力,github上无闻大牛已经做了中文译本:https://github.com/Unknwon/the-way-to-go_ZH_CN
3.《Go 学习笔记 第三版》雨痕写的,该电子书在github开源:https://github.com/qyuhen/book
4.《go web 编程》,是谢大(beego的作者)写的电子书,github中文目录链接:https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/preface.md
5.《go编程基础》视频教程,此教程是无闻大牛讲解的,github视频链接:https://github.com/Unknwon/go-fundamental-programming
mac vscode 配置golang相关推荐
- Mac VSCode配置C语言环境(可以调试)
Mac VSCode配置C语言环境 c_cpp_properties.json tasks.json launch.json 新建一个文件夹,用vscode,然后再新建一个test.c文件. #inc ...
- VSCode配置golang
1.VSCode和golang的安装在这里省略,步骤很简单,我的版本分别是: VSCode:1.57.1 Golang:1.16.5 不需要配置GOROOT环境变量,安装好后自动配置 1.1配置GOP ...
- mac vscode 配置php跳转
1. mac上安装了php 2. 在命令行 whereis php(which php)查看php安装路径 3. 在vscode中安装 插件 PHP IntelliSence. 4. 打开vscode ...
- Mac vscode 配置latex
文章目录 1.安装MacTeX 2.vscode依赖 3.vscode setting配置 1.安装MacTeX 从官网下载:http://www.tug.org/mactex/mactex-down ...
- Mac VScode配置C++环境
主要参考 https://blog.csdn.net/weixin_44881648/article/details/111046381?utm_medium=distribute.pc ...
- VSCode配置Golang单元测试实例
目录 前言 正文 一.导入testing工具包 二.单元测试文件命名规范 三.单元测试方法命名规范 四.执行单元测试 结尾 前言 说到代码的健壮性,单元测试是少不了的,基本上所有语言都有自己的单元测试 ...
- VSCode配置golang开发环境
VSCode 插件推荐 插件安装方法 按下 Ctrl/Cmd+P 输入 ext install [插件关键字 / 名称],就可以安装了. 下面提供各个插件对应的安装命令. 各语言插件 Go: ext ...
- 【无标题】Vscode 配置golang dlv调试
下载安装好dlv,配置好golang项目的mod文件,点击运行->添加配置->Go:launch package 生成launch文件后既可以启动调试了!
- Mac -- VScode配置leetcode环境,解决node.js环境报错问题
写在前面 代码小白,翻来覆去终于找到安装不成功的原因啦!以下不是详细的安装教程,只是几个小tips,我觉得有这个几个提示应该会很容易成功. 1. 安装VScode 快速安装vscode就用Safari ...
最新文章
- Ubuntu下开启SSH服务
- linux查看进程相关命令
- maven+nexus搭建maven仓库
- 对C++中new的认识
- 使用 Core Graphics 绘制基本形状
- Linux学习总结(72)——Linux系统安全加固
- linux ppp 串口 gprs,linux下GPRS ppp拨号默认路由问题(存在eth0)
- 安装Greenplum-perfmon-web监控软件遇到的问题及解决
- gis地图php,中国地图矢量gis数据
- php短信验证码接口免费,[php短信验证码接口]PHP 短信验证码
- php批量邮件地址,PHP通过phpmailer批量发送邮件功能
- Py||Is prime
- 关于iis中域名转向的问题
- 荧光染料 ICG-HSA 吲哚菁绿修饰人血白蛋白
- 【SpringCloud】Could not find artifact org.springframework.cloud:spring-cloud-starter-xxx
- 小白之路由浅入深之------day05
- 值得学习的C/C++开源项目
- caiguai docker-xware_【原创】基于Docker实现迅雷远程下载
- 分形之列维(levy)曲线
- gCastle | 华为诺亚方舟实验室自研的因果结构学习工具链
热门文章
- FEAST:快速准确的微生物来源追溯工具
- NC:应对干旱 细菌崩了 真菌依然很稳(纯网络分析发Nature子刊)
- NAR:gcMeta——全球微生物组数据存储和标准化分析平台
- 微生物相关网络构建教程中文Microbial association network construction tutorial
- R语言使用fs包的dir_delete函数删除指定的文件目录(remove the directory)、举一反三、file_delete函数、link_delete函数可以用来删除文件和文件夹
- R语言基于日期范围筛选数据实战(Subset by a Date Range):日期范围之内的数据、日期范围之外的数据、日期之后的数据、日期之前的数据
- R语言可视化分面图、假设检验分组t检验、可视化单变量分组分面箱图(faceting boxplot)并添加p值(Make facet boxplot and add p-values)、添加抖动数据点
- R语言使用str_locate函数和str_locate_all函数来定位特定字符串或者字符串模式在字符串中的位置:str_locate函数第一个位置、str_locate_all函数定位所有位置
- R语言使用Repeat函数多次执行代码块内的语句,实现循环执行任务的功能:repeat没有提供任何检查条件,所以编码者必须给出退出重复循环的条件(一般使用if和break)
- R语言dataframe(data.table)使用用最近的前一个非NA值向前填充缺失值NA实战