macos下golang配置 【原创】

macos下golang配置

Write By CS逍遥剑仙 我的主页: www.csxiaoyao.com GitHub: github.com/csxiaoyaojianxian Email: sunjianfeng@csxiaoyao.com QQ: 1724338257

目录导航

  • macos下golang配置
    • 1. 安装homebrew
    • 2. 安装go
    • 3. 配置环境变量
    • 4. 创建工作目录及配置GOPATH
    • 5. 测试
    • 6. 安装beego
    • 7. 测试
    • 8. 简单示例
    • 9. 问题解决

1. 安装homebrew

终端输入

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

安装后更新

brew update

2. 安装go

brew install go

3. 配置环境变量

export GOBIN="/usr/local/go/bin"
export GOPATH="/Users/sunshine/gowork"
export PATH="$PATH:$GOBIN:$GOPATH/bin"

4. 创建工作目录及配置GOPATH

vim ~/.bash_profile
source ~/.bash_profile

或 vim ~/.zshrc

export GOPATH=/Users/sunshine/gowork

5. 测试

cd /Users/sunshine/gowork
mkdir src pkg bin main
cd main
touch test.go

写入代码

package main
import "fmt"
func main() {
    fmt.Printf("Hello, world")
} 

执行

go run test.go

输出 Hello, world 表示正常

6. 安装beego

需要安装 Beego 和 Bee 开发工具

$ go get github.com/astaxie/beego
$ go get github.com/beego/bee

7. 测试

$ cd $GOPATH/src
$ bee new hello
$ cd hello
$ bee run hello

Windows 平台下

$ cd %GOPATH%/src
$ bee new hello
$ cd hello
$ bee run hello

浏览器中打开 http://localhost:8080/ 进行访问

8. 简单示例

浏览器中打印 “Hello world”

package main
import (
    "github.com/astaxie/beego"
)
type MainController struct {
    beego.Controller
}
func (this *MainController) Get() {
    this.Ctx.WriteString("hello world")
}
func main() {
    beego.Router("/", &MainController{})
    beego.Run()
}

保存为 hello.go,命令行编译执行

$ go build -o hello hello.go
$ ./hello

浏览器中打开 http://127.0.0.1:8080 ,返回 “hello world”。

9. 问题解决

找不到指令、bee安装失败

cd ${GOPATH}/src/github.com/beego/bee

版本回退并重新安装

git reset --hard 69023e9ae0b0d65cc2394c791c5af777311a06d4
go install

【By CS逍遥剑仙】 未经允许不得转载:禅林阆苑 » macos下golang配置 【原创】

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏csxiaoyao

macos下golang配置

7486
来自专栏Golang语言社区

【Go 语言社区】再看GOPATH

GOPATH环境变量用于指定这样一些目录:除$GOROOT之外的包含Go项目源代码和二进制文件的目录。go install和go 工具会用到GOPATH:作为编...

3165
来自专栏blackpiglet

使用 Prometheus 监控 Ceph

本文是在 Ubuntu 16.04 最新版基础上安装 Prometheus 监控系统,Ceph 版本为 Luminous 12.2.8。

3664
来自专栏优启梦

利用HSTS安全协议柔性解决全站HTTPS的兼容性问题

HSTS(HTTP Strict Transport Security)国际互联网工程组织 IETE 正在推行一种新的 Web 安全协议,作用是强制客户端(如浏...

4437
来自专栏不想当开发的产品不是好测试

性能测试 -- 常用命令

linux下 CPU,内存查看: /proc/cpuinfo /proc/meminfo 查看CPU核数: cat /proc/cpuinfo|grep 'pr...

1939
来自专栏凉城

利用HSTS安全协议柔性解决全站HTTPS的兼容性问题

1393
来自专栏linux驱动个人学习

推挽输出和开漏输出的区别

推挽输出,可以输出高电平,连接数字器件: 输出0时,N-MOS导通,P-MOS高阻,输出0。 输出1时,N-MOS高阻,P-MOS高阻,输出1;(不需要外部上拉...

3214
来自专栏GuZhenYin

C#使用Xamarin开发可移植移动应用进阶篇(8.打包生成安卓APK并精简大小),附源码

前言 源码地址:https://github.com/l2999019/DemoApp 可以Star一下,随意 - - 说点什么.. 嗯,前面讲了那么多,是时候...

2568
来自专栏hbbliyong

应用TortoiseGit为github账号添加SSH keys,解决pull总是提示输入密码的问题

每次同步或者上传代码到githun上的代码库时,需要每次都输入用户名和密码,这时我们设置一下SSH key就可以省去这些麻烦了。若果使用TortoiseGit作...

3938
来自专栏服务端技术杂谈

获取线程池中任务执行数量

通过ThreadPoolExecutor的相关API实时获取线程数量,排队任务数量,执行完成线程数量等信息。

772

扫码关注云+社区

领取腾讯云代金券