文档章节

开始Go开发之旅-Golang架构师之路系列实战

冯琪超
 冯琪超
发布于 2017/04/22 03:51
字数 867
阅读 786
收藏 16

作者: gomaster.me(冯琪超) 系列:Golang架构师之路

巧妇难做无米之炊,golang sdk就是gopher的大米

下载golang

点击 官网下载golang sdk
根据不同系统,官网下载链接会选择相应的平台进行链接跳转,也可手动选择需要的平台安装包。

安装golang

如果是升级golang老版本你首先必须先移除已经存在的版本。

Linux, Mac OS X, FreeBSD tar包

  • 一般配置
    1. 下载安装包
    2. 解压到/usr/local
    tar -zxvf go$VERSION.$OS-$ARCH.tar.gz -C /usr/local
    
    添加/usr/local/go/bin到PATH环境变量中,可以添加入/etc/profile(系统范围)或$HOME/.profile
    export PATH=$PATH:/usr/local/go/bin
    
  • 安装到指定位置 Go二进制分发包假设它被安装到/usr/local/go(或Windows下 c:\Go),但Go tools是可以被安装到不同的地方的。在这种情况下你必须设置GOROOT环境变量指定它被安装的目录。
    例如如果你安装Go到你的home目录你应该添加添加类似如下到$HOME/.profile:
export GOROOT=$HOME/GO1.X
export PATH=$PATH:$GOROOT/bin

注意:GOROOT只需要在被安装到自定义位置才需要设置。 另外Go还有GOPATH,GOBIN环境变量,请参考博客如何编写Go代码,但本文中的示例仅需将Go的bin安装目录添加到$PATH中。

Mac OS X pkg安装包

双击可执行程序一步步next即可完成安装。
该种方式将Go安装到/usr/local/go目录下。并且会将/usr/local/go/bin目录加入到PATH环境变量中。你可能需要重启下terminal才可以生效。如果没有效果,可以按照上面所讲的环境变量配置手动添加。

Windows

Windows方式有二进制可执行包安装,也有zip压缩包解压安装的,这里不多赘述。值得注意的是Windows平台默认按照c:\Go目录,需要将c:\Go\bin添加到PATH环境变量中。

测试验证安装

通常情况使用go version查看是否可以正确显示Go的版本,我们就会认为安装成功。但这里我们通过配置一个工作区并构建一个简单的程序来验证Go安装是否正确。

  1. 创建工作区目录,$HOME/go(如果你想要使用不同的目录,你需要设置GOPATH环境变量;你可以参见更详细的如何编写Go代码)
  2. 在工作区目录下创建src/hello
  3. 创建并编写hello.go文件,内容如下:
package main
import "fmt"

func main(){
    fmt.Printf("hello, world\n")
}
  1. 使用go tool构建:
$ cd $HOME/go/src/hello
$ go build

上面的命令将在源文件同目录下构建一个名为hello的可执行文件。
5. 执行生成的可执行文件

$ ./hello
hello, world

如果你可以看到hello, world打印输出则说明Go安装成功。

你可以执行go install安装二进制文件到工作区的bin目录或者使用go clean移除它。

卸载Go

其实很简单,将安装目录删除,并将环境变量移除即可。

接下来

在兴奋地开始享受写Go代码之前,请务必先阅读如何编写Go代码(将讲述一些使用Go tools的必要概念)

© 著作权归作者所有

冯琪超
粉丝 18
博文 4
码字总数 9067
作品 0
海淀
架构师
私信 提问
加载中

评论(2)

冯琪超
冯琪超

引用来自“妹子说名字长丁丁长”的评论

配置go环境也能做架构师了么
千里之行 始于足下 欢迎多多交流 😄
无锡首席大都督程序员
配置go环境也能做架构师了么
Android 网络编程 目录

Android 网络编程 目录 Android 网络编程1 Http协议 Android 网络编程2 Okhttp缓存机制 Android 网络编程3 Java NIO to be continued... Android 架构师之路 目录 Android 架构师之路1 UML图...

香沙小熊
2018/06/21
0
0
SegmentFault D-Day 北京:后端

SegmentFault D-Day 介绍 SegmentFault D-Day,全称 SegmentFault Developer Day,是由 SegmentFault 发起主办的系列技术沙⻰。自 2014 年启动,D-Day 技术沙龙已在北、上、广、深、杭、等 ...

SegmentFault
2016/02/29
0
0
SegmentFault D-Day 北京:后端

SegmentFault D-Day 介绍 SegmentFault D-Day,全称 SegmentFault Developer Day,是由 SegmentFault 发起主办的系列技术沙⻰。自 2014 年启动,D-Day 技术沙龙已在北、上、广、深、杭、等 ...

SegmentFault
2016/02/29
254
1
一个程序员的技术进阶之路

进阶之路 刚刚入职一家IT公司成为一名初级开发工程师,我们如何在技术这条路线上野蛮生长呢。 这条技术进阶之路就是一个金字塔形,越往上人越少。 奶爸在IT职场很多年接触了很多技术大咖,他...

奋斗De奶爸
2017/12/14
0
0
自学MVC看这里——全网最全ASP.NET MVC 教程汇总

MVC架构已深得人心,微软也不甘落后,推出了Asp.net MVC。小编特意整理博客园乃至整个网络最具价值的MVC技术原创文章,为想要学习ASP.NET MVC技术的学习者提供一个整合学习入口。本文从Why,W...

葡萄城控件技术团队
2016/08/18
204
0

没有更多内容

加载失败,请刷新页面

加载更多

面向对象方面的一些东东

<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" cont......

流年那么伤
26分钟前
2
0
git 过滤文件夹和文件(IDEA)

最近使用git版本管理工具遇到一件很烦的事情,commit时总会把.idea、.*.iml和target文件添加进来,实际开发中,这些是需要过滤掉的。在.gitnore文件添加了过滤不起作用。下面介绍一种成功过滤...

uug
34分钟前
2
0
Spark Streaming 实时统计商户当日累计PV流量

一、问题 对实时流量日志过滤筛选商户流量,对每个商户的流量进行累计,统计商户实时累计流量。 当时间超过24时时,重新统计当日商户的实时累计流量。 二、实现步骤 1、采用Spark Streaming...

boonya
39分钟前
2
0
如果Task与Event 创建了记录类型后,不出现在Lightning的Activities中

如果在Lightning的Activities没出现这两个Button,但是在页面布局的Lightning 按钮区也存在,全局操作的记录类型就需要选择一个,否则不会出现

在山的那边
47分钟前
2
0
ddd中的子域和界限上下文

我们先来说说子域是什么?子域在我的理解是在一个庞大的系统中可以明显感知的不同的区块,如果在电商模块中,商品目录,订单,物流,库存,发票等等都可以感知他们明显的不同,可以认为是子域...

算法之名
57分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部