赶知识网

golang go get出现unrecognized import path

2017-06-30 / 2439次点击 golang
大家都知道golang中可以通过go get来获取依赖库,并且支持直接从github或者git.oschina.net这些git托管平台直接获取。今天尝试go get一个自己写的http 框架时,提示如下错误:

$  go get git.oschina.net/iceup/yaf-ext
package git.oschina.net/iceup/goyaf: unrecognized import path "git.oschina.net/iceup/goyaf" (parse https://git.oschina.net/iceup/goyaf?go-get=1: no go-import meta tags)
问题查找

仔细对了一遍,项目地址是没有错误的。尝试用-v参数查看下载过程:

$ go get -v git.oschina.net/iceup/goyaf
Fetching https://git.oschina.net/iceup/goyaf?go-get=1
ignoring https fetch with status code 404
Parsing meta tags from https://git.oschina.net/iceup/goyaf?go-get=1 (status code 404)
import "git.oschina.net/iceup/goyaf": parsing git.oschina.net/iceup/goyaf: http: read on closed response body
package git.oschina.net/iceup/goyaf: unrecognized import path "git.oschina.net/iceup/goyaf"
原来在获取的时候产生404了。后来才想到这个库是私有的,如果没有登录平台,是无法访问到的,难怪呢。

解决办法

因为go get这个命令实际上是将相应git平台上的库下载到本地$GOPATH目录下,所以想到一个办法既然go get无法下载,那么自己通过git clone下来放到对应的$GOPATH目录下就可以了。

其它可能问题

网上查看到可能有其它问题造成的,例如可能是被墙的原因。如果碰到类似的问题用go get -v就可以查看相应的过程,再具体问题具体处理就可以了。
有用 0 没用 0

Top10

沪ICP备09053415号 © 赶知识网