Golang 目录工程组织规范

先了解golang 项目的工程组织规范,
以及远程包/本地包

$GOPATH
├─bin
├─pkg
└─src
    └─github.com(远程包)
    └─golang.org(远程包)
    └─your_pkg_src(本地包)

简要的说一说吧,以go-sqlite3为例,包的源码和项目中通常的引用方式为:
import github.com/mattn/go-sqlite3

那go get github.com/mattn/go-sqlite3下来的源码位置应为:
$GOPATH/src/github.com/mattn/go-sqlite3(这是物理路径)

同理如若网络问题导致需要手动下载包那就应该在src目录下建立同样的子目录将包存放到此处。

例如你的报错信息中有golang.org/x/net/context这个包,
因为golang.org的服务器是谷歌公司的,IP被封,你通过手动等方式下载回来的包因该存放到此处:
$GOPATH/src/golang.org/x/net/context

 

来自 <https://www.oschina.net/question/86462_2191491?sort=time>

猜你喜欢

转载自blog.csdn.net/wide288/article/details/84313794