在说GOPATH之前,先说说GO语言的项目结构:

1、Go语言中组织单元最大的为项目,项目下包含包。一个包可以有多个文件

2、包在物理层面上就是文件夹。同一个文件夹中多个文件的package必须相同,一般package和所在的文件夹名称相同

3、Goland中的标准GO项目:

Src目录:需要手动创建,和main.go是同一级别的目录

Go语言必须要求配置GOPATH环境变量,告诉系统项目的路径

Go编译器在寻找包时的顺序:GOPATH/src   ----->   GOROOT/src

GOPATH/src中未寻找到需要的包,才到GOROOT/src目录下寻找。一般在Goland这种IDE,只需要在IDE中配置GOPATH即可。

这让我想起了从github上拉取下来的一个PlantUML项目,起初我死活是编译通不过的。学习了GOPATH后我好想知道是为什么了。因为我没有配置GOPATH,并且是直接在命令行中使用 go build 构建,这能构建成功才有鬼了。除非是在Goland中打开,IDE会提示进行配置,这尴尬的

Go语言中的GOPATH解析相关推荐

  1. C语言中的sizeof解析

    1. 定义: sizeof是C/C++中的一个操作符(operator),作用就是返回一个对象或者类型所占的内存字节数.返回 值类型为size_t,在头文件stddef.h中定义.这是一个依赖于编译系 ...

  2. c语言中realloc()函数解析

    http://blog.csdn.net/hackerain/article/details/7954006 realloc(void *__ptr, size_t __size):更改已经配置的内存 ...

  3. C语言中const用法解析

    const修饰的变量存储位置,和不用const修饰的没区别!!!!!! 转自:http://blog.csdn.net/xingjiarong/article/details/47282255 关键字 ...

  4. c语言中short作用,C语言中short的意思

    short和int等一样,是C或C++的一种内部数据类型.用于表示有符号整数. 不同的是,他们在内存中所占的空间大小不同,short通常为int所占一半,也有一些实现为和int一样,但不会比int大. ...

  5. exit在c语言里的作用,C语言中exit函数的使用

    exit() 结束当前进程/当前程序/,在整个程序中,只要调用 exit ,就结束 return() 是当前函数返回,当然如果是在主函数main, 自然也就结束当前进程了,如果不是,那就是退回上一层调 ...

  6. c语言的point函数,C语言中friend友元函数详细解析

    C语言中friend友元函数详细解析 友元函数是可以直接访问类的私有成员的非成员函数.它是定义在类外的普通函数,它不属于任何类,但需要在类的定义中加以声明,声明时只需在友元的名称前加上关键字frien ...

  7. c语言sizeof(test),解析C语言中的sizeof

    一.sizeof的概念 sizeof是C语言的一种单目操作符,如C语言的其他操作符++.--等.它并不是函数.sizeof操作符以字节形式给出了其操作数的存储大小.操作数可以是一个表达式或括在括号内的 ...

  8. C语言中.h文件和.c文件如何理解?看完详细解析,小白也能懂!

    简单的说其实要理解C文件与头文件(即.h)有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程:        1.预处理阶段 2.词法与语法分析阶段        3.编译 ...

  9. Java中的enum详细解析------Java 语言中 Enum 类型的使用介绍

    Enum 类型的介绍 枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用来将一组类似的值包含到一种类型当中.而这种枚举类型的名称则会被定义成独一无二的类型描述符,在这一点上和常 ...

最新文章

  1. php比较长的configure
  2. 如何从类型创建新的对象实例
  3. 怎么git 自己建的服务器_如何搭建自己的git服务器
  4. R 笔记 prophet
  5. Stream流中的常用方法_map
  6. 腾讯2020校园招聘----逛街
  7. git/github使用完整教程(1)基础
  8. 10 PP配置-生产主数据-工作中心相关-定义工作中心公式
  9. 高性能滚动 scroll 及页面渲染优化
  10. 1从控制台输入年份,判断是闰年还是平年;
  11. TMS320F28335项目开发记录1_CCS的使用介绍
  12. NATS--NATS Streaming持久化
  13. java batik 字体文件_java – 当使用Batik的SVGGraphics2D时,如何设置font-family而不是font?...
  14. shiro教程3(加密)
  15. 基于精确背景补偿的动态目标检测算法
  16. 计算机集成制造ppt英语,计算机集成制造cims
  17. 完全删除iCloud注册的Apple ID
  18. Keil uVision4使用总结
  19. 《1984》中所描绘的是怎样的一个存在
  20. toString转化成json

热门文章

  1. 手机恢复出厂设置文件怎么恢复
  2. unity占内存大小_Unity3D占用内存太大的解决方法
  3. UI面试中让我们跌倒的专业问题完
  4. git 切换分支代码未更新,尝试新方法
  5. 如何像程序员一样去思考
  6. [CQ系列] 惠普HP G42/G32驱动下载XP/11年1月5日更新
  7. sql中向下取整怎么取_Sql 获取向上取整、向下取整、四舍五入取整的实例
  8. 地狱边境显示服务器,Xbox Game Pass云游戏服务正在升级硬件架构,部分游戏体验已得到提升...
  9. libcurl 设置gzip压缩
  10. 新功能发布 | TSMaster工具箱集成开发环境系列3-工具箱调用小程序库