mac 下 go 安装以及使用goland 开发

8,740 阅读2分钟

MAC下golang 安装以及使用goland开发。

一、下载并安装go

golang.org/dl/ 选择一个合适的安装包。直接选择一个mac下可以使用的pkg包,一键傻瓜式安装。

mac 下go的默认安装路径是在 /usr/local/go。 安装完后可以使用 查看版本。

go version 

这就表示正确安装了。 然后把 GOROOT 和 GOPATH GOBIN 加到环境变量 ,在这个文件的末尾导入增加下面的变量即可。~/.bash_profile

二、配置goland 开发环境

然后就可以打开我们的ide进行开发了,我这里使用的是goland。 如果都正确安装的话, preference-->go-->GOROOT 下就会正确的显示出来刚才安装好的go SDK。 PS:我在这里遇到了一个坑,最开始我已经安装了GO,但是一直提示我 GOROOT IS NOT DEFINE,这意思是提醒我GOROOT没有正确配置。然后我在右侧的选择框想选择前面的 /usr/local/go 目录,但是似乎mac 下这个文件夹是无法直接访问到的。搞了我半天,没搞明白,一直以为我哪里理解错了。最后在同事的提醒下,重启了一下goland,再打开时,发现goland 已经自己发现了 /usr/local/go 路径。

三、尝试一个go程序

扒了一段代码,尝试一下用go开发web应用。 在本地Mac的目录下随便找个文件写下下面的代码,然后go build xx.go 。生成可执行的二进制文件。 当我把生成的可执行文件上传到服务器,执行的时候报错了。

这不是坑人吗?查了一下说是编译运行环境不一样导致的。编译的时候这样操作就行。 GOARCH根据你的服务器环境是64位还是32位设置就行。

env GOOS=linux GOARCH=amd64 go build main.go

重新编译后再运行,就OK了。

package main

import (
	"fmt"
	"log"
	"net/http"
)

func main() {
	// 该方法接收一个路由匹配的字符串,以及一个 func(ResponseWriter, *Request) 类型的函数
	http.HandleFunc("/", handler)
	log.Fatal(http.ListenAndServe(":8000", nil)) // 监听本地8000端口
}

func handler(w http.ResponseWriter, r *http.Request) {
	fmt.Fprintf(w, "URL.Path = %q\n", r.URL.Path) // r.URL.Path 输出url的路径
}

作者:togettoyou
链接:https://juejin.cn/post/6887468483655761933
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

四、goland导包飘红

GOROOT 和 GOPATH 都设置了。检查一切都是对的。 可是就是代码里的 import 包 直接飘红。 最后在这里发现了办法。竟然是goland 自己的bug。我之前的版本是 2019.2。 然后 check for update 更新了一下。再次打开就OK了。 learnku.com/go/t/47415

continue....