Go - 环境安装
你好,Go语言
Go 是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。
因工作需要,准备入坑,先从环境安装开始,输出一个 Hello World。
环境安装
目标
安装完成并运行 Hello World 成功!
本机系统:macOS High Sierra 10.13.4
Go 版本:1.12
方式一:
通过 brew 安装
brew install go
根据提示进行安装吧,我使用的 方式二 进行安装的。
方式二:
通过安装包安装
地址:https://dl.google.com/go/go1.12.darwin-amd64.pkg
下载之后直接点击安装,一步步继续即可。
配置环境变量
vi ~/.bashrc
//新增
export GOROOT=/usr/local/go
export GOPATH=/Users/username/go/code //代码目录,自定义即可
export PATH=$PATH:$GOPATH/bin
及时生效,请执行命令:source ~/.bashrc
如果命令行使用的是zsh,请修改 .zshrc 文件。
vi ~/.zshrc
//新增
export GOROOT=/usr/local/go
export GOPATH=/Users/username/go/code //自定义代码目录
export PATH=$PATH:$GOPATH/bin
及时生效,请执行命令:source ~/.zshrc
验证是否安装成功,命令行下执行:

目录结构
bin
存放编译后可执行的文件。
pkg
存放编译后的应用包。
src
存放应用源代码。
例如:
├─ code -- 代码根目录
│ ├─ bin
│ ├─ pkg
│ ├─ src
│ ├── hello
│ ├── hello.go
Hello World 代码
//在 hello 目录下创建 hello.go
package main
import (
"fmt"
)
func main() {
fmt.Println("Hello World!")
}
命令行执行:

命令
查看完整的命令:

go build hello
在src目录或hello目录下执行 go build hello,只在对应当前目录下生成文件。
go install hello
在src目录或hello目录下执行 go install hello,会把编译好的结果移动到 $GOPATH/bin。
go run hello
在src目录或hello目录下执行 go run hello,不生成任何文件只运行程序。
go fmt hello
在src目录或hello目录下执行 go run hello,格式化代码,将代码修改成标准格式。
其他命令,需要的时候再进行研究吧。
开发工具
GoLand

GoLand 是 JetBrains 公司推出的 Go 语言集成开发环境,与我们用的 WebStorm、PhpStorm、PyCharm 是一家,同样支持 Windows、Linux、macOS 等操作系统。
下载地址:https://www.jetbrains.com/go/
软件是付费的,不过想想办法,软件可以永久激活的。
学习网址
- Go语言:https://golang.org/
- Go语言中文网:https://studygolang.com/
- Go语言包管理:https://gopm.io/
小结
主要分享了环境安装和开发工具,并将 Hello World 程序运行成功。
推荐阅读
本文欢迎转发,转发请注明作者和出处,谢谢!
Go - 环境安装的更多相关文章
- 使用专业的消息队列产品rabbitmq之centos7环境安装
我们在项目开发的时候都不可避免的会有异步化的问题,比较好的解决方案就是使用消息队列,可供选择的队列产品也有很多,比如轻量级的redis, 当然还有重量级的专业产品rabbitmq,rabbitmq ...
- Linux下xampp集成环境安装配置方法 、部署bugfree及部署禅道
XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包.XAMPP 是一个易于安装且包含 MySQL.PHP 和 Perl 的 Apache 发行版.XAMPP 的确非 ...
- node.js环境安装,及连接mongodb测试
1.node.js环境安装 npm config set python python2.7npm config set msvs_version 2013npm config set registry ...
- 谈谈React Native环境安装中我遇到的坑
谈谈React Native环境安装 这个坑把我困了好久,真的是接近崩溃的边缘...整理出来分享给大家,希望遇到跟我一样问题的小伙伴能尽快找到答案. 首先,这是在初始化App之后,react-nati ...
- Kali Linux渗透测试实战 1.2 环境安装及初始化
1.2 环境安装及初始化 目录(?)[-] 环境安装及初始化 下载映像 安装虚拟机 安装Kali Linux 安装中文输入法 安装VirtualBox增强工具 配置共享目录和剪贴板 运行 Metasp ...
- Linux初学 - Elasticsearch环境安装
下载 https://www.elastic.co/downloads/elasticsearch 安装 rpm -ivh 也可以双击rpm包安装 修改elastaticsearch host配置 修 ...
- Win7下Python2.7环境安装paramiko模块
Win7下Python2.7环境安装paramiko模块,经过安装并测试成功,整理文档如下: 1.下载安装Windows版本的Python2.7,我默认装在C:\Python27 我的python已经 ...
- [ALM]一步一步搭建MS ALM环境 - 安装TFS + SQL SERVER
描述: 安装SQL SERVER 2012,安装TFS 2013,配置TFS,挽起袖子,准备干活儿 步骤: 1,打开Hyper-V Manager,参考[Hyper-V]使用操作系统模板创建新的虚拟机 ...
- Sencha Toucha 2 —1.环境安装配置、在线打包、离线打包
环境安装配置 1. 下载 1.1 Sencha Touch 下载 http://cdn.sencha.com/touch/sencha-touch-2.2.1-gpl.zip 1 ...
- [转载]SharePoint 2013测试环境安装配置指南
软件版本 Windows Server 2012 标准版 SQL Server 2012 标准版 SharePoint Server 2013 企业版 Office Web Apps 2013 备注: ...
随机推荐
- Java实例练习——基于UDP协议的多客户端通信
昨天学习了UDP协议通信,然后就想着做一个基于UDP的多客户端通信(一对多),但是半天没做出来,今天早上在参考了很多代码以后,修改了自己的代码,然后运行成功,在这里分享以下代码,也说一下自己的认识误区 ...
- Macbook sublime 安装markdown插件
Sublime Text为3 版本 安装sublime text 插件,需要“***”,不会弄的,就可以移步了. 首先按 command + shift + p 调出安装插件的界面,输入“instal ...
- 一文带你看懂WebSocket 的原理?为什么可以实现持久连接?
工作之余在知乎上偶然看到一篇回帖,瞬间觉得之前看的那么多资料都不及这一篇让我对 websocket 的认知深刻易懂,之前看总完总觉得一知半解云里雾里.所以与大家共同分享一下一起学习.比较喜欢这种博客理 ...
- shell学习(14)- who
Linux who命令用于显示系统中有哪些使用者正在上面,显示的资料包含了使用者 ID.使用的终端机.从哪边连上来的.上线时间.呆滞时间.CPU 使用量.动作等等. 使用权限:所有使用者都可使用. 语 ...
- array类型的方法
var arr1 = [12,454,'dafda','feagfag',23]; var arr2 = [46468,'ffwfe','dafs','dfsfs']; arr1.indexOf('d ...
- centos禁止ping
1.修改配置文件/etc/sysctl.conf 在这个文件的最后添加一行: net.ipv4.icmp_echo_ignore_all=1 (0 代表允许 1 代表禁止) 2.执行sysctl -p ...
- vs获取最新时,提示签出解决方案
项目中的文件有被意外去掉了只读属性的. VSS中签入状态的文件在本地都有只读属性. 如果VSS中是签入状态,而对应的本机文件没有只读状态,在获取最新版本的时候,就会弹出一个对话框提示签出还是用VSS中 ...
- eclipse自动添加版权信息
Preference->Java->Code Style->Code Template->comments->Files->Edit 勾选上Automaticall ...
- (转)vimdiff 快速比较和合并少量文件
vimdiff 快速比较和合并少量文件 原文:http://www.cnblogs.com/abeen/p/4255754.html 纯文本文件比较和合并工具一直是软件开发过程中比较重要的组成部分,v ...
- jdbc操作步骤
package com.itheima.test; import java.sql.Connection; import java.sql.DriverManager; import java.sql ...