簡體   English   中英

Golang 1.5供應商 - 找不到包裝

[英]Golang 1.5 vendors - Cannot find package

嘗試使用版本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$GOPATH/src ,所以設置

export GOPATH=`pwd`

你的build.sh使它失敗。 如果你把你的apps_api放在~/fakegopath/src/並運行

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

它應該工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM