Mac OSX下Go语言开发环境的搭建与配置--使用InteliJ IDEA 13
折腾了一上午终于把go语言的ide配置好了.
其实GO语言的语法和特性早在去年的时候就学习了一遍.结果后来一直没机会进行开发,结果还是个GO小白.感叹一下,要学好一门编程语言唯一的途径就是多写代码...
最近由于学习需要要做一些GO语言开发的工作,所以又开始折腾环境了.
现在网上和书上提到的IDE有许多,比如vim,emacs,eclipse,liteide,intellij idea,goworks,sublime等等.
下面说说我自己在这些ide折腾的经历:
- vim:这种大神级别的开发环境我还是不太习惯,写一些示例代码还行,但感觉真要做点工程项目还是比较麻烦了.也许是个人的vim修为不够吧~~~
- emacs:另一个大神级的ide暂时没有尝试;
- eclipse+golang-plugin:配置很简单有选项,但居然没有语法提示,按住ctrl点函数名也不跳转....果断放弃了.
- liteide:官方出的ide,感觉还是比较简陋吧.
- goworks:这种ide好像是某个实验室开发的demo,首页上写着只花了11周,用了一下发现相当的不成熟,new project都不行,囧~~~
- sublime+gosublime:写代码比较简单,代码配色也是我的最爱.但问题是不太好调试,debug的话只能用fmt.Println进行了.另外默认也是不支持跳转函数的,可能加上ctags的插件是可以的,懒得继续了找了...
- intellij idea+golang-plugin:用来用去发现还是这个最成熟,支持的最好,也是我个人的选择.但也有一些路径和sdk上的坑,而且刚起来的时候会有build一些乱七八糟的东西导致cpu飙到100以上...但总的来说还是应该还是目前为止最适合普通大众的ide.
下面就详细介绍一下IntelliJ IDEA的配置过程.
0.安装java和go语言,各种平台下面都有对应的安装包,直接下一步就可以了.
1.下载IntelliJ IDEA 13
IDEA有community和professional两个版本,自己下的是community版.
下载地址是 http://www.jetbrains.com/idea/download/
2. 安装golang插件
找到插件安装界面并搜索golang,然后点击搜索结果进行安装.
Mac下是在Preferences下面的Plugins选项卡下面


这一步比较简单一般都比较顺利.
3.设置GOROOT和GOPATH
如果环境变量中没有设置这两个变量的话,一启动IntelliJ IDEA就会提示有两个错误引导进行设置.
常规的方法是在bashrc里面的跟go有关的变量
export GOROOT=/usr/local/go
export GOBIN=$GOROOT/bin
export GOARCH=amd64
export GOOS=darwin export GOPATH=/usr/local/code/go/project1
但我个人的情况比较特殊,因为我的环境变量中已经有这两个变量了,但InteliJ IDEA还是死活不认,总是提示错误:

点击instructions链接就可以找到问题的解决办法:
If you are launching the IDE the normal application launcher and you get the error message about missing paths then you need to add
GOPATHandGOROOTin/etc/launchd.confto match the values from your.bashrcor.zshrc.Please note that
/etc/launchd.confdoes not exist by default, so you will need to create it with the following:setenv GOROOT /usr/local/go
setenv GOPATH /Users/yourname/goif setenv returns "Command not found" then the launchctrl command can be used:
launchctl setenv GOROOT /usr/local/go
launchctl setenv GOPATH /Users/yourname/go
简单的说就是要把GOPATH和GOROOT设置到mac osx的环境变量中.
4. 设置GO SDK
当配置好环境变量后需要在项目里面在配置一个Go SDK.


classpath里面有两条数据:
/usr/local/go/src/pkg
/usr/local/go-modules/src
点击+号还能添加更多的类库路径.在上面这图上还有一行红色的警告提示有个Go SDK无效了,这个可以通过修改Modules的Go SDK来解决.

最后正确配置的效果如下图

如果在项目里能看到这样的配置就算是OK了.
5. 使用更多第三方库
如果想要引用其他的第三方库可以直接进行界面上的操作
如果要使用任何第三方库可以直接运行命令,go get ${packagename}例如go get gopkg.in/mgo.v2
当然可以使用IntelliJ IDEA里面的自动运行命令功能

点击下载后就开始下载了

下载后的package包放在GOPATH的第一个目录中,即我例子中的/usr/local/go-modules/src下面
6.使用IDEA进行Go语言编程
语法提示,高亮以及实时编译都挺不错的,使用shift+F10可以运行程序.

另外可以配合使用vim的IDEA插件,可以让编辑的过程更加迅速.
Mac OSX下Go语言开发环境的搭建与配置--使用InteliJ IDEA 13的更多相关文章
- Windows10下配置Linux下C语言开发环境
今天为大家介绍如在Windows10下配置Linux下C语言开发环境,首先安装linux子系统:启用开发者模式 1.打开设置 2.点击更新和安全3.点击开发者选项 4.启用开发人员模式 5.更改系统功 ...
- 总结:Mac前端开发环境的搭建(配置)
新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...
- go 语言开发环境的安装与配置
go 语言开发环境的安装与配置 编辑器选择 一直以来都是用sublime,但是听说sublime对于golang的插件支持并不是特别完善,并且VS Code只要在自身所带的扩展商店里安装go插件就可以 ...
- arm-linux下qt + opencv开发环境的搭建(Altera DE1 Soc)
arm-linux-gnueabihf-gcc下载 qt下载 arm-linux下qt + opencv开发环境的搭建(Altera DE1 Soc) Ubuntu 16.04 安装QT arm嵌入式 ...
- win7下 go语言开发环境搭建(64bit)
Go 是一个开源的编程语言,它能让构造简单.可靠且高效的软件变得容易. Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全.支持并行进程 ...
- windows下python web开发环境的搭建
windows下python web开发环境: python2.7,django1.5.1,eclipse4.3.2,pydev3.4.1 一. python环境安装 https://www.pyth ...
- R语言开发环境的搭建
1.R语言的下载 https://mirrors.tuna.tsinghua.edu.cn/CRAN/ 2.R语言的安装 安装完后,打开R Console 输入 pie(c(0.9, 0.2, 0.3 ...
- Go语言开发环境的搭建(Goland和VSCode)
教程首发于:微信公众号<Go编程时光>,欢迎你一起来学习 1. 下载安装 Go语言 下载地址:https://golang.google.cn/dl/ 下载完成后,直接双击 msi 文件进 ...
- Windows环境下ARM集成开发环境的搭建与使用
Windows环境下能够使用Eclipse IDE for C/C++ Developers来搭建ARM开发环境 本文地址:http://blog.csdn.net/u011833609/articl ...
随机推荐
- 基于tiny4412的Linux内核移植 -- PWM子系统学习(七)
作者信息 作者: 彭东林 邮箱:pengdonglin137@163.com QQ:405728433 平台简介 开发板:tiny4412ADK + S700 + 4GB Flash 要移植的内核版本 ...
- 转:Oracle密码过期,取消密码180天限制
原文:https://www.cnblogs.com/soar-gh/p/5949158.html 1.进入sqlplus模式 sqlplus / as sysdba; 2.查看用户密码的有效期设置( ...
- Afreechart很强大的图表库,支持股票曲线图,饼图,曲线
Afreechart是一个很强大的图表库,支持股票曲线图,饼图,曲线等.源码下载:http://www.23code.com/afreechart/
- jrat
JRat the Java Runtime Analysis Toolkit What is it? The Java Runtime Analysis Toolkit is a low overhe ...
- Openshift 用户,角色和RBAC
OCP中的权限管理沿用的Kubernetes RBAC机制,授权模式主要取决于下面几个因数 Rules 针对主要对象的操作权限,比如建立Pod Sets of permitted verbs on a ...
- Postgres间隔大量写IO的解决办法
概述 为了保证数据可靠性,同时还要保证好的读写性能,以及读写的一致性,经过多年的积累,REDO日志,shared buffer等基本成为关系型数据库的标配.postgres也不例外. 为了保证数据的可 ...
- Linux音频驱动简述
一.数字音频 音频信号是一种连续变化的模拟信号,但计算机仅仅能处理和记录二进制的数字信号.由自然音源得到的音频信号必须经过一定的变换,成为数字音频信号之后,才干送到计算机中作进一步的处理. 数字音频系 ...
- C/C++中的格式化字符
格式化输出函数包括printf, fprintf, sprintf等等. 格式化输入函数包括scanf, fscanf, sscanf等等. 这类函数在输入输出的时候都有一个参数为格式化字符串(for ...
- [Todo]非常好的免费IT书籍资源 & Github排名
今天看github排名,看到排在第二位的是免费书籍: https://github.com/vhf/free-programming-books/blob/master/free-programmin ...
- C++ 初始化列表(转载)
何谓初始化列表 与其他函数不同,构造函数除了有名字,参数列表和函数体之外,还可以有初始化列表,初始化列表以冒号开头,后跟一系列以逗号分隔的初始化字段.在 C++中,struct和class的唯一区别是 ...