Ubuntu下安装Golong并用Vscode做IDE最有效方法,避免99%的坑 | 轻松学习GO
最详细的教程,避开99%的坑,亲测有效
由于大部分教程都是win版本的,所以专门总结了一个linux版本的,其核心在于环境配置和插件安装,经历本人通宵7小时解决了这个问题,用自己的踩坑帮助大家避坑,希望大家多多支持!
安装环境:ubuntu(Linux) + vscode
准备条件:已经安装好vocode
网上有很多教程,这里我就不一一赘述了,有需要的朋友查看其他博客,如果你觉得Github上的vscode源码慢的话,可以采用我的码云下载,我已经建好库,内容一样
踩坑第一步:下载go语言环境
Golang官方网站是被屏蔽的,所以只能采用国内网站
踩坑第二步:Linux安装Glang
我出现的问题:自己电脑是安装Anaconda的,加上当时自己没有理清一些环境配置环境的概念,后来装到了
home目录下,安装到home下可以很好解决权限问题,个人电脑我建议可以这么做
- 将下载的二进制包解压至 /usr/local目录
tar -C /usr/local -xzf go1.13.linux-amd64.tar.gz
- 将 /usr/local/go/bin 目录添加至PATH环境变量:(这是个大坑,需要将环境变量加载到
home目录下的.bashrc的文件中,这个文件在每次打开终端的时候都会执行一遍)
export GOPATH=/home/feng/gitRepository/go
export GOROOT=/home/feng/go
export GOOS=linux
export GOTOOLS=$GOROOT/pkg/tool
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
具体情况我参考了另外一篇博主的理解https://www.cnblogs.com/jackzz/p/10017049.html
解释一下,PATH相当于工作空间(c++里的项目的意思),GOROOT是根目录文件(相当于c++的编译器所在的位置)
- 检验你有没有装好环境(这一步一定要做,不然后面的全部白费),也很简单,任意终端输入
go env查看所有配置信息(主要在你查看路径的时候使用),如果返回正常,继续下一步,不正常请自行检查错误步骤,或根据相应情况更改
踩坑第三步:vscode环境配置(大大的BUG)
更改权限,vscode中的一些插件需要安装到GOBIN环境变量下,
$sudo chmod 777 $HOME/learn/go/bin其中$HOME自动检测你的GO的工作空间目录- 安装插件GO以及Code Runner(这个不难,不再赘述,需要朋友请查阅相关命令行),vscode会自动配置环境,如果没有,请打开
文件->首选项->设置找到扩展中的Go Configuration中的在set ...,打开后输入如下命令行,根据你的情况修改)
{
"workbench.iconTheme": "material-icon-theme",
"python.pythonPath": "/home/feng/anaconda3/bin/python",
"terminal.integrated.inheritEnv": false,
"python.insidersChannel": "off",
"todo-tree.highlights.enabled": false,
"git.autofetch": true,
"git.enableSmartCommit": true,
"python.dataScience.sendSelectionToInteractiveWindow": true,
"workbench.colorTheme": "Slack Theme Dark Mode",
"window.zoomLevel": 0,
"go.useLanguageServer": true,
"files.autoSave": "afterDelay",
"goModGrapher.engine": "dot",
"goOutliner.enableDebugChannel": true,
"goOutliner.extendExplorerTab": true,
"go.autocompleteUnimportedPackages": true,
"explorer.confirmDelete": false,
}
踩坑第四步安装相关插件(最最最核心的一步)
https://goproxy.io/zh/ 直接上网站,其他方法均不适用了,网上有相关教程,就是在上述配置文件中加入以下命令行
# 启用 Go Modules 功能
export GO111MODULE=on
# 配置 GOPROXY 环境变量
export GOPROXY=https://goproxy.io
两句命令行搞定,切记切记切记,然后进入vscode提示安装插件就好了,SUCCESSED!
最后,这是我个人在通宵7小时后踩下的所有坑,这个基本是没有问题的,大家可以放心操作哦,遇到其他问题先看看之前有没有做错,然后再去百度相应问题,对症下下药,希望我这篇文章对你有帮助,也希望我们一同成长!
Ubuntu下安装Golong并用Vscode做IDE最有效方法,避免99%的坑 | 轻松学习GO的更多相关文章
- ubuntu下安装eclipse IDE for C/C++ developers
序 linux的GUI和windos比起来实在逊色,虽然它的终端模式(命令行模式)非常强大.linux发行版ubuntu的GUI相对其他版本要华丽一些,所以最近由redhat转向ubuntu进行li ...
- Ubuntu下安装JDK以及相关配置
1.查看系统位数,输入以下命令即可 getconf LONG_BIT 2.下载对应的JDK文件,我这里下载的是jdk-8u60-linux-64.tar.gz 3.创建目录作为JDK的安装目录,这里选 ...
- 在Windows/Ubuntu下安装OpenGL环境(GLUT/freeglut)与跨平台编译(mingw/g++)
GLUT/freeglut 是什么? OpenGL 和它们有什么关系? OpenGL只是一个标准,它的实现一般自带在操作系统里,只要确保显卡驱动足够新就可以使用.如果需要在程序里直接使用OpenGL, ...
- 在Ubuntu下安装ovs-dpdk
在Ubuntu下安装ovs-dpdk 参考资料:https://software.intel.com/zh-cn/articles/using-open-vswitch-with-dpdk-on-ub ...
- Fedora和Ubuntu下安装OpenGL开发环境配置
Fedora下OpenGl开发环境配置 开发OpenGL工程需要3个库文件和对应的头文件: libglut.so,libGLU.so,libGL.so, gl.h ,glu.h, glut.h 这些库 ...
- Ubuntu下安装Nginx,PHP5(及PHP-FPM),MySQL
.简介: Tomcat在高并发环境下处理动态请求时性能很低,而在处理静态页面更加脆弱.虽然Tomcat的最新版本支持epoll,但是通过Nginx来处理静态页面要比通过Tomcat处理在性能方面好很多 ...
- Ubuntu下安装并配置VS Code编译C++
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7069091.html Ubuntu下安装并配置VS Code编译C++ 安装 ...
- Ubuntu下安装Texmaker的问题与解决方案
在Ubuntu下安装好了texlive后,为了开发方便,希望再继续安装一个编辑器,用于方便的编辑latex文档. 而texmaker就是一个很好的工具. 问题1, 被安装了早期版本的latex 不管你 ...
- Ubuntu下安装、激活并配置Pycharm
Ubuntu下安装.激活并配置Pycharm 最近在学习Python这门语言,到了需要Python编译器学习的阶段,通过网上了解各个Python编译器的优缺点,最后选择了pycharm作为Python ...
随机推荐
- mybatis注解大全
注解 目标 相对应的 XML 描述 @CacheNamespace 类 <cache> 为给定的命名空间 (比如类) 配置缓存. 属性:implemetation,eviction, fl ...
- 【leetcode】1291. Sequential Digits
题目如下: An integer has sequential digits if and only if each digit in the number is one more than the ...
- 【CUDA 基础】5.2 共享内存的数据布局
title: [CUDA 基础]5.2 共享内存的数据布局 categories: - CUDA - Freshman tags: - 行主序 - 列主序 toc: true date: 2018-0 ...
- 2017 ZSTU寒假排位赛 #3
题目链接:https://vjudge.net/contest/147974#overview. A题,费用流,不会..跳过了. B题,给一个图,问至少添加几条边能成为强连通图.显然缩点,要使得成为一 ...
- moveDown()
这里在判断边界时,判断的是 y == HEIGHT - 1. void moveDown(){ //定义变量存放人物下方的坐标 int dx, dy; //当下方没有元素时,直接return if(y ...
- SPOJ AMR12B 720
这个题应该是个优先队列的模版题 当时比赛的时候没时间做先贴一下大神的代码好好学习学习 B - Gandalf vs the Balrog Time Limit:2000MS Memory Li ...
- LeetCode 215. 数组中的第K个最大元素(Kth Largest Element in an Array)
题目描述 在未排序的数组中找到第 k 个最大的元素.请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素. 示例 1: 输入: [3,2,1,5,6,4] 和 k = 2 ...
- Vue入门下
使用npm创建项目,系统会自动生成一些列文件. 以慕课网上的Travel项目来说,在生成的项目文件中存在src文件夹,这个文件夹也是平时在做项目的时候用的比较多的,其他的一些配置信息更改的频率较低. ...
- jquery中mouseover和mouseenter的区别
jquery中mouseover和mouseenter的区别 一.总结 一句话总结: 见名知意:enter(进入)和over(在上方)的意思好好思考一下 mouseover就是从子元素回到自己的时候也 ...
- zookeeper备忘
ZooInspector https://issues.apache.org/jira/secure/attachment/12436620/ZooInspector.zip 参考:https://b ...