微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Golang 1.5供应商 – 找不到包装

尝试使用版本1.5并使用GO15vendOREXPERIMENT =“1”在go lang中构建我的项目,以确保我在本地查找供应商.

我的结构是:

apps_api
   main.go
   build.sh
   src
      controllers
      models
      views
   vendor
      github.com
      golang.org
      .....

build.sh包含

export GO15vendOREXPERIMENT="1"
export GOPATH=`pwd`
go build .

控制器文件示例

import (
    "models"
    "views"

    "github.com/gin-gonic/gin"
)

但我得到很多错误,说没有找到包装,请参阅下面的例子

src/controllers/app-versions.go:10:2: cannot find package "github.com/asaskevich/govalidator" in any of:
    /Users/ereeve/.gvm/gos/go1.5/src/github.com/asaskevich/govalidator (from $GOROOT)
    /Users/ereeve/Documents/gocode/src/apps_api/src/github.com/asaskevich/govalidator (from $GOPATH)

src/controllers/index.go:4:2: cannot find package "github.com/chnlr/baseurl" in any of:
    /Users/ereeve/.gvm/gos/go1.5/src/github.com/chnlr/baseurl (from $GOROOT)
    /Users/ereeve/Documents/gocode/src/apps_api/src/github.com/chnlr/baseurl (from $GOPATH)

如果我将这些行添加到我的build.sh文件中它将构建,但我不想使用go get因为我在我的项目中使用本地供应商的1.5以避免依赖.

# go get github.com/gin-gonic/gin
# go get github.com/go-sql-driver/MysqL
# go get github.com/rif/cache2go
....

我有什么想法我做错了吗?

IIRC,GO15vendOREXPERIMENT仅在您正在构建的包在$GOPATH / src内时才有效,所以设置
export GOPATH=`pwd`

你的build.sh使它失败.如果你把你的apps_api放在〜/ fakegopath / src /中并运行

env GOPATH="${HOME}/fakegopath/src/" GO15vendOREXPERIMENT="1" go build .

它应该工作.

原文地址:https://www.jb51.cc/go/242052.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐