如何使用`dep`

时间:2018-02-05 06:47:52

标签: go heroku dep

我正在使用Heroku的Golang buildpack部署一个具有以下结构的简单Web应用程序

my-app/
    handler/
        user.go
        session.go
    vendor/
        github.com/
        golang.org/
    main.go
    Gopkg.toml
    Gopkg.lock

在我的主文件中,我导入了自己的handler

import (
    "fmt"
    "net/http"
    "my-app/handler"
)

由于以下错误,Heroku无法在我的项目上运行安装:

----> Using go1.9.3
----> Running: go install -v -tags heroku . 
----> cannot find package "my-app/handler" in any of: ... 

我可以在本地运行go installmy-app而没有任何问题。在我看来,heroku不能识别我的内部项目包。

我正在使用dep,我在Gopkg.toml中有以下配置:

[metadata.heroku]
root-package = "github.com/mygithub/my-app"
go-version = "go1.9.3"
install = ["."]
ensure = "false"

使用内部包部署Go应用程序还需要做些什么?感谢。

1 个答案:

答案 0 :(得分:4)

尝试将根程序包设置为不带域

的项目名称

[metadata.heroku] root-package = "my-app" go-version = "go1.9.2" install = [ "./..." ]