go-001-环境部署,IDEA插件
一、下载安装
https://golang.org/dl/
下载之后安装即可
官网地址:https://golang.org/
1.1、mac上安装go
1、安装Homebrew
安装命令:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Homebrew的使用:
(1)安装软件:brew install 软件名,例如:brew install wget
(2)搜索软件:brew search 软件名
(3)卸载软件:brew uninstall 软件名
(4)更新软件:brew upgrade 软件名,例如:brew upgrade git
(5)查看使用brew已安装的软件列表:brew list
(6)查看软件信息:brew info /home 软件名,例如:brew info git/brew home git
(7)查看哪些已安装的程序需要更新:brew outdated
brew安装好之后可以使用上述的一些命令来测试一下是否安装成功,例如使用brew list来查看一下当前brew安装的软件列表
2、使用brew安装go
1》、安装命令:
brew install go
2》、检查:
输入brew info go或者go env即可查看当前安装的golang版本信息
3》、配置go路径环境
主要是GOROOT和GOPATH
GOROOT:就是go的安装环境
GOPATH:作为编译后二进制的存放目的地和import包时的搜索路径。其实说通俗点就是你的go项目工作目录。通常情况下GOPATH包含三个目录:bin、pkg、src。
src目录下主要存放go的源文件
pkg目录存放编译好的库文件,主要是*.a文件;
bin目录主要存放可执行文件
注意:千万不要把GOPATH设置成go的安装路径,可以自己在用户目录下创建一个目录,例如mygo
一般安装好go之后,使用go env查看一下当前环境。此时显示出来的GOROOT就是你使用brew安装go的安装目录,这个路径要记下来。接下来要在bash_profile文件中进行配置。
使用
vim ~/.bash_profile
然后在这个文件中进行编辑,下面以我的电脑为例,路径这种要根据不同人的情况而定
GOROOT=/usr/local/Cellar/go/1.10.1/libexec
export GOROOT
export GOPATH=/Users/lihongxu/work/mygo
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOBIN:$GOROOT/bin
GOROOT: go安装目录
GOPATH:go工作目录
GOBIN:go可执行文件目录
PATH:将go可执行文件加入PATH中,使GO命令与我们编写的GO应用可以全局调用
编辑完之后退出保存文件,然后使用
source ~/.bash_profile
使之生效,然后再使用go env查看当前环境,可以发现已经是你配置文件中设置的路径环境了
3、安装IDE:Goland
百度搜Goland,去官网下就行。
4、测试配置
在设置的工作目录下,也就是GOPATH的路径下,使用Goland创建一个工程也好,或者直接在这个路径下创建一个.go文件也好,进行测试。在测试时,一定要注意以下几点:
(1)注意在运行单个的go文件时,package一定要是main才行,否则会报错“go run : cannot run non-main package”,导致无法运行
(2)import fmt没有用双引号“”包裹名称。import包名必须带引号,多个包名可以使用多次import,也可以将包名用引号括起来后,用换行符连接,然后在最外层包裹圆括号。
(3)对go run/ go install/ go build等的理解和使用
(4)import不能引用代码中没有使用的包,否则编译时会报错“imported and not used: xxx”
(5)“{”必须紧跟代码,不能在新行中出现
(6)main作为程序入口,不能携带参数,命令行参数使用os.Args变量获取
5、go run/ go install/ go build / go get的区别
go run 运行当个.go文件
go install 在编译源代码之后还安装到指定的目录
go build 加上可编译的go源文件可以得到一个可执行文件
go get = git clone + go install 从指定源上面下载或者更新指定的代码和依赖,并对他们进行编译和安装
二、IDEA安装插件
在IDEA中,搜索golang,注意地址是:https://github.com/go-lang-plugin-org,安装
配置:File→other setting→Default Project Structure→Platform Setting→SDKs→添加go sdk选择上一步安装的即可
三、新建一个go语言项目
new→project→go→下一步,选择即可
四、编写demo
建立一个src目录,创建一个main.go文件即可
编写代码
package main
import "fmt"
func main() {
fmt.Println("hello world");
}
运行调试即可。
学习参考教程:http://www.runoob.com/go/go-tutorial.html
go-001-环境部署,IDEA插件的更多相关文章
- 基于python3.6.6的scrapy环境部署+图像识别插件安装
一.Python3.6.6安装1.安装依赖的二进制软件包yum -y install zlib zlib-devel bzip2 bzip2-devel ncurses ncurses-devel r ...
- ubuntu12.04+hadoop2.2.0+zookeeper3.4.5+hbase0.96.2+hive0.13.1伪分布式环境部署
目录: 一.hadoop2.2.0.zookeeper3.4.5.hbase0.96.2.hive0.13.1都是什么? 二.这些软件在哪里下载? 三.如何安装 1.安装JDK 2.用parallel ...
- Jenkins实现生产环境部署文件的回滚操作(Windows)
由于dotnet项目的生产环境环境部署工具比较少,所以我使用jenkins作为生产环境的自动化部署工具. 既然有回滚操作,那么就会有部署操作:要实现回滚,先要实现部署的操作,我在jenkins搭建了一 ...
- Flume环境部署和配置详解及案例大全
flume是一个分布式.可靠.和高可用的海量日志采集.聚合和传输的系统.支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(比如文本.HDF ...
- Ceph Jewel 10.2.3 环境部署
Ceph 测试环境部署 本文档内容概要 测试环境ceph集群部署规划 测试环境ceph集群部署过程及块设备使用流程 mon节点扩容及osd节点扩容方法 常见问题及解决方法 由于暂时没有用到对象存储,所 ...
- Jmeter+Ant+Jenkins接口自动化测试(一)_环境部署
前言: 2017年最后一个月份,今天抽出时间把之前的一些记录分享出来,也为今年画上个简单的句号吧,无论好与坏,无论成功与失败,简单的记忆,不要留下点点空白. 特别提示: 知识是用来分享的,但是也要尊重 ...
- kafka 基础知识梳理及集群环境部署记录
一.kafka基础介绍 Kafka是最初由Linkedin公司开发,是一个分布式.支持分区的(partition).多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特 ...
- 深度学习Tensorflow生产环境部署(上·环境准备篇)
最近在研究Tensorflow Serving生产环境部署,尤其是在做服务器GPU环境部署时,遇到了不少坑.特意总结一下,当做前车之鉴. 1 系统背景 系统是ubuntu16.04 ubuntu@ub ...
- MySQL+MGR 单主模式和多主模式的集群环境 - 部署手册 (Centos7.5)
MySQL Group Replication(简称MGR)是MySQL官方于2016年12月推出的一个全新的高可用与高扩展的解决方案.MGR是MySQL官方在5.7.17版本引进的一个数据库高可用与 ...
- Centos7.5基于MySQL5.7的 InnoDB Cluster 多节点高可用集群环境部署记录
一. MySQL InnoDB Cluster 介绍MySQL的高可用架构无论是社区还是官方,一直在技术上进行探索,这么多年提出了多种解决方案,比如MMM, MHA, NDB Cluster, G ...
随机推荐
- PHP的ISAPI和FastCGI比较
1.CGI(通用网关接口/Common Gateway Interface)一般是可执行程序,例如EXE文件,和WEB服务器各自占据着不同的进程,而且一般一个CGI程序只能处理一个用户请求.这样,当 ...
- 【Python3】 django2.0 url 跳转设置
python: 3.6.4 django : 2.0 在创建应用时候.我是把 urls.py 分开了.所以在设置url跳转时候.要修改成如下模式 1 父 urls.py 里边要加上命名空间 2 ...
- QWidget编写的安卓app
最近为了配套人脸识别的整套设备去检测,特意做了个机关控制app,需要现场修改前端设备和服务器设备的一些参数以便进行检测.qt做一些简单的app还是非常方便的.特意增加了禁用屏保功能.apk文件体验:h ...
- 【基础】java类的各种成员初始化顺序
父子类继承时的静态代码块,普通代码块,静态方法,构造方法,等先后顺序 前言: 普通代码块:在方法或语句中出现的{}就称为普通代码块.普通代码块和一般的语句执行顺序由他们在代码中出现的次序决定--“先出 ...
- Ubuntu16.04安装Mono、MonoDevelop运行C#代码
Ubuntu16.04安装MonoDevelop运行C#代码 在Ubuntu上安装Mono 运行下面代码授权注册repo源并更新软件列表: Add the Mono repository to you ...
- Sublime PlantUML环境配置
参考[http://www.jianshu.com/p/e92a52770832]在安装中遇到不少问题,总结一次成功的步骤如下 一.安装步骤: 1)准备java 环境 jdk1.7 2)安装Subl ...
- 使用正则表达式来截取nginx中的内置变量
nginx 中的内置变量都可以通过 if 指令 + 正则表达式来进行截取,截取之后的结果通过正则表达式的分组来进行引用 比如:从请求中传过来的一个名为 ssl_client_s_dn 的变量,它的值是 ...
- 微信小游戏 修改appid
微信开发者工具中,当你使用一个公众号开发一个项目,有需求切换到另外一个公众号继续开发时,需要修改appid. 修改微信小游戏 project.config.json 文件的appid
- 使用HtmlAgilityPack解析html
HtmlAgilityPack是.net下使用xPath来解析html的类库,可以方便的做html的页面分析处理 项目地址: http://htmlagilitypack.codeplex.com/ ...
- 【BZOJ1502】[NOI2005]月下柠檬树 Simpson积分
[BZOJ1502][NOI2005]月下柠檬树 Description 李哲非常非常喜欢柠檬树,特别是在静静的夜晚,当天空中有一弯明月温柔地照亮地面上的景物时,他必会悠闲地坐在他亲手植下的那棵柠檬树 ...