Golang的防坑小技巧

                                                  作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

  作为一名小白,在之前没有接触到编程的小伙伴,难免会踩到一些坑,比如说刚刚入门的时候你需要安装环境,学习Golang初期,我们就要配置环境,难免对一些变量的声明不知所措(比如:什么是GOPATH,什么是GOROOT,),当别人告诉你这是干什么的,或是你在博客看到别人写的注释,你第一眼看到或许会半信半疑,我觉得这个时候就没有必要去顾虑那么多,如果按照对方配置的确好使就成。因为你在后期的时候用着用着就知道它是做什么的。就好像协程这个东西,单独对一个小白说他的工作原理,小白只会越听越晕,只有让他自己去使用,然后根据实现的结果,他也会自己总结出来的。这篇博客主要是总结一些我在学习Golang过程中遇到的一些坑,写完对沉迷踩坑的小伙伴有所帮助。

一.再次重温什么是GOPATH和GOROOT;

  也许看过我第一篇关于Golang的小伙伴对这两个名词并不陌生。GO语言的进阶之路-初探GO语言:http://www.cnblogs.com/yinzhengjie/p/6482675.html

  其实用一句话就能总结出来:Gopath就是go语言的第三方库的存放处,Goroot就是GO程序的安装位置。也许你在安装IDE会提示你指定一个工作目录,那个都是你自定义的,自定义你的写的程序文件存放在哪就这么简单。

二.cannot find package报错处理方案;

  也许你在执行代码的时候会出现以下的报错:

                  

  出现这个报错到底是什么因素呢?答案就在这上面,说是没有找到引号中的包,那么具体我们又该如何操作呢?刚刚我们在第一点的时候已经说到了GOPATH,这个时候你就可以去你的Gopath找找,是不是真的没有这个package。

  如果你不知道去哪里找你的Gopath,也很简单,你在你的命令行中敲击一行命令就可以看到:C:\Users\Yinzhengjie>go env

                        

  在这个目录下回有一个src目录,看这个目录中是否有你引号中的package,如果没有特别好处理,就一行命令搞定:C:\Users\Yinzhengjie>go get  golang.org/x/net/html。当然你想要重现这个报错也很简单,就直接右键删除对应的package即可。哈哈~

三.丢失端口

  这种情况,一般都是你在写网络编程的时候忘记写端口了,只写了一个IP地址,导致的报错,如图:

     

  解决办法当然就是将IP添加进去就可以了。

四.

  未完,待续........

Golang的防坑小技巧的更多相关文章

  1. Hadoop基础-常见异常剖析之防坑小技巧

    Hadoop基础-常见异常剖析之防坑小技巧 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.

  2. Python语言防坑小技巧

    Python语言防坑小技巧 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.赋值即定义  1>.运行以下代码会出现报错 #!/usr/bin/env python #_*_ ...

  3. Golang fmt包使用小技巧

    h1 { margin-top: 0.6cm; margin-bottom: 0.58cm; direction: ltr; color: #000000; line-height: 200%; te ...

  4. iOS工作小技巧及填坑记录

    以下是本人在iOS开发工作中使用的一些小技巧,记录一下. 1.使用XXX.pch文件便捷开发+加速Build 在IOS开发的项目中有一个XX_Prefix.pch XX_Prefix.pch:扩展名. ...

  5. js几个小技巧和坑

    蝴蝶书看了,也知道充满了毒瘤和糟粕,但该用还是得用. 实际写了几天,小技巧记录下来.都是在py里有直接答案,不会遇到的问题,没想到js里这么费事. 还是要多读<ES6标准入门> 1判断ob ...

  6. [转]Golang 中使用 JSON 的小技巧

    taowen是json-iterator的作者. 序列化和反序列化需要处理JSON和struct的关系,其中会用到一些技巧. 原文 Golang 中使用 JSON 的小技巧是他的经验之谈,介绍了一些s ...

  7. JavaScript的兼容小坑和调试小技巧

    JavaScript作为一种弱类型编程语言,入门简单,只要稍微注意一下IE方面的兼容性,就可以很好的使用它. 本文主要是对IE兼容的小坑和调试的小技巧进行举例分析,并给出解决方法. 1.var str ...

  8. React Native工作小技巧及填坑记录

    以下是本人在React Native开发工作中使用的一些小技巧,记录一下. 1.从网络上拉取下来的React Native缺少React和React Native库. 终端 1. cd 项目根目录 2 ...

  9. Android开发的那些坑和小技巧

    1.android:clipToPadding 意思是控件的绘制区域是否在padding里面.默认为true.如果你设置了此属性值为false,就能实现一个在布局上事半功陪的效果.先看一个效果图. 上 ...

随机推荐

  1. 5-4 bash脚本编程之三 条件判断及算术运算

    1. 反引号是引用执行结果,并非是返回值 如下是错误的,结果是一行行记录,不是返回值 放大为: 练习 2. shell中如何进行算术运算 A=3 B=4 1. let算术运算表达式 2. $[算术运算 ...

  2. Code First is a bad name,这些年我们对Code First的理解都错了 !很震惊吧?

    当看到这个时,我也很震惊.估计绝大多数的人和我一样,这些年来,一直不知道Code Fisrt的真实意义.下面是一篇讲述此情况的译文,欢迎围观,若有翻译不当的地方,请指正,谢谢.如果被惊到了,请点赞!, ...

  3. Delphi名站以及高手Blog

    以前知道的: http://cnblogs.com/del (万一兄的,这个不用解释了) http://www.cnblogs.com/del/archive/2010/04/25/1720750.h ...

  4. Oracle的序列

    Oracle的序列 序列介绍 序列是Oracle提供的用于产生一系列唯一数字的数据库对象. 使用序列能够实现自己主动产生主键值.序列也能够在很多用户并发环境中使用.为所实用户生成不反复的顺序数字,并且 ...

  5. 这就涉及到ABAQUS历史输出中各能量变量的意义

    ABAQUS中,对于很多动态问题,尤其像高速冲击模拟中,对结果评价很重要的一点就是要保证模型能量守恒,这就涉及到ABAQUS历史输出中各能量变量的意义,下面最各简单整理: ALLAE:人工伪应变能,六 ...

  6. Photoshop 基础二 快捷键

    1.取消选区:Ctrl + D 2.反选: Shift + F7 3.复位调板:窗口-工作区-复位调板位置 4.图像的缩放: Ctrl.+.- 5.用前景色填充:Ctrl + Delete 6.用背景 ...

  7. \r\n 如何转换成utf-8格式的,在jsp页面中正常显示换行

    数据库中存的换行是\r\n,读取到UTF-8编码的JSP 页面上以后,没有换行 在jsp页面显示之前,要进行一下字符转换,将所有\r\n转换成<br>,如下: String result  ...

  8. Bootloader之uBoot简介

    本文转载自:http://blog.ednchina.com/hhuwxf/1915416/message.aspx 一.Bootloader的引入 从前面的硬件实验可以知道,系统上电之后,需要一段程 ...

  9. php跨域

    <?php header('Content-type:text/html; charset="utf-8"'); $url = 'http://10.32.41.194:80 ...

  10. mybatis映射文件遇到的小问题

    mybatis的映射文件插入操作时: 如果对应的属性是String类型的,那么一定要做空串的判断. 比如注册的时候,如果需要向数据库中插入一条记录时,对应的字段没有给他赋值,这个String类型的值传 ...