无法识别的导入路径(导入路径不以主机名开头)

时间:2017-11-08 18:40:00

标签: go

我按照the installation instructions的自定义安装条款安装了go,因为我已安装到用户目录,以便适应多个版本的go。

当我从我的项目的src目录中go get .时,我得到上面已经提到的错误消息类型 -​​

  

无法识别的导入路径(导入路径不以主机名开头)

您能否解释一下,为什么要寻找一个主机名以及在典型项目中应该如何避免这一点?

顺便说一句,我在设置following specific project and hash时遇到了问题,接受的答案仍然提到street

2 个答案:

答案 0 :(得分:5)

go get通过假设导入路径(在源代码中的import语句中)标识可以下载包的URL,例如yap/app来下载依赖项和包。 github.com/habeanf/yap。只要开发人员正确使用导入,它就可以工作;不幸的是,yap项目的开发人员没有。

他们导入github.com/habeanf/yap/app的位置,他们应该导入$GOPATH/src/yap等。唯一的解决方法是手动将GitHub仓库克隆到select availability.adate, sum(intrusionEvents.duration)/availability.uptime, intrusionEvents.host FROM availability left join intrusionEvents on (availability.adate = intrusionEvents.itime::date) WHERE availability.adate >= '20171001' and availability.adate < '20171101' GROUP by availability.adate, intrusionEvents.host, availability.uptime ,然后尝试构建它。您可能希望在该项目上打开GitHub问题并请求他们修复导入路径,以便它可以像普通的Go项目一样构建。

答案 1 :(得分:0)

我在 Windows 上设置同一个项目时遇到了同样的问题(注意:更新的项目文档为 here)。

结果证明 GOPATH 是通过 GO 安装为我的用户名设置的,而我根据文档中的描述更新了系统环境 GOPATH:

<块引用>

将 $GOPATH 环境变量设置为您的工作区:export GOPATH=path/to/yapproj

为我的用户名删除 GOPATH 解决了问题,我设法构建了应用程序。

我发布此信息是为了防止其他人像我一样在此问题上花费太多时间。