go中import包的大坑解决方案_第1页
go中import包的大坑解决方案_第2页
go中import包的大坑解决方案_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第go中import包的大坑解决方案目录方案一:使用GOROOT和GOPATH方案二:使用go.mod最近开始使用Go/GoLand在import自定义包时出现各种状况,措手不及,大概在网上找了解决方法,几乎没说的清楚的(可能是我个人理解力比较差哈哈)

个人喜好加上网上其他人给的解决方法实在是那个啥,所以图文方式解决问题才能事半功倍。

windows环境下装的Goland,Mac及其他linux系统参考,了解到本质后万变不离其宗。

方案一:使用GOROOT和GOPATH

(以我本机为准举例讲讲各种方法)

GOROOT:就是Go的安装目录(C:\Go),(类似于java的JDK),里面有bin目录(C:\Go\bin)GOPATH:是我们的工作空间,保存go项目代码和第三方依赖包(F:\Go)GOPATH可以设置多个,其中,第一个将会是默认的包目录,使用goget下载的包都会在第一个path中的src目录下,使用goinstall时,在哪个GOPATH中找到了这个包,就会在哪个GOPATH下的bin目录生成可执行文件

使用GOPATH时,Go会在以下为目录中搜索包:

GOROOT/src:Go标准库GOPATH/src:应用自身代码和第三方依赖的代码

该方法对目录架构要求比较严格例如我的F:\Go\src\awesomeProject1,即必须创建在GOPATH/src

注意说明:sum1包内的函数要大写,这种方式是严格按照GOROOT和GOPATH的方式,例如main包importawesomeProject1/sum1

包就会在$GOPATH/src(Go/src/awesomeProject1/sum1)路径下找到。

方案二:使用go.mod

通常大家不喜欢将代码放在$GOPATH/src下面,此时importpkg时,就要用到go.mod

从Go1.11版本之后,已经不再推荐使用GOPATH来构建应用了。也就是说GOPATH被认为时废弃的垃圾的做法。

当你开启了GO111MODULE=on,仍然使用GOPATH模式的方法,在引入自定义模块时会报错。

用Gomodules创建出来的工程中会包含一个go.mod的文件,工程的位置/路径随便

1.设置环境变量goenv-wGO111MODULE=on

2.打上这个小对勾。

3.执行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论