golang 引入导入本地其他项目的包或者其他目录的代码

项目目录结构如下,本文主要是解决如何引入其他文件夹的代码或者其他项目的包。刚开始老是碰到引入问题。编译时,引入错误通常会报malformed module path "xxxxx/common/message": missing dot in first path element类似的错误。还有就是有些开源库中用到golang.org/x/....等问题,golang.org这个网址本身无法访问造成了很多障碍(新版IDEA和VS Code可以直接引入本地目录的代码,模块名称+目录即可以引入)。

我的目录结构如下:

go.mod文件内容如下

module 模块名字自行修改

go 1.13

require (
	github.com/StackExchange/wmi v0.0.0-20190523213315-cbe66965904d // indirect
	github.com/apache/thrift v0.13.0
	github.com/go-ole/go-ole v1.2.4 // indirect
	github.com/shirou/gopsutil v2.20.2+incompatible
	golang.org/x/sys v0.0.0-20200406155108-e3b113bbe6a4 // indirect
)

其实go.mod文件内容都是自动生成的,只需要前面几行,需要定义module xxxx ,其中xxxx代表模块的名字,引入包的时候需要用到,如果模块名字为test,则引入本地其他package,应该这麽写

import (
    "test/common/message
)

其他test为模块名字,文件夹名字和模块名字不一致时,引入还是使用模块名。

还有就是无法访问问题,golang.org域名正常情况都是无法访问的,有些包就无法下载。有些库本身使用到了"golang.org/x/....之类的包,那就可能需要配置GO_PROXY来做。可以选择环境变量来做,也可以在ide编辑器中设置。我使用的是liteide

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值