将Go项目部署到Heroku时,pq软件包的安装失败。我也在heroku buildpack github issues发布了此内容。
部署时出错:
-----> Running: godep go install -tags heroku ./...
gournay.go:10:3: cannot find package "github.com/lib/pq" in any of:
/app/tmp/cache/go1.2.1/go/src/pkg/github.com/lib/pq (from $GOROOT)
/tmp/build_ce268203-801e-4dfc-a56c-d70698d6c5bf/.heroku/g/src/github.com/andyatkinson/gournay/Godeps/_workspace/src/github.com/lib/pq (from $GOPATH)
/tmp/build_ce268203-801e-4dfc-a56c-d70698d6c5bf/.heroku/g/src/github.com/lib/pq
godep: go exit status 1
go get
和go install
按预期在本地运行。该项目是在本地建立和运行的。我相信我的包结构是正确的,GOPATH
和GOROOT
是正确的。我正在使用godep
创建下面的依赖项文件。 pq包的源代码似乎被复制到项目中,因此它似乎可以从该源代码编译。
~/go/src/github.com/andyatkinson/gournay (master) $ cat Godeps/Godeps.json
{
"ImportPath": "github.com/andyatkinson/gournay",
"GoVersion": "go1.2.1",
"Deps": [
{
"ImportPath": "github.com/lib/pq",
"Rev": "c808a1bb644594ca717ac61f71e6b0e454b835e2"
}
]
}
我错过了什么吗?我还应该检查一下吗?谢谢!
答案 0 :(得分:1)
你在开发上运行godep save
吗?
来自godep自述文件:
$ godep save
This will save a list of dependencies to the file Godeps/Godeps.json,
and copy their source code into Godeps/_workspace. Read over its
contents and make sure it looks reasonable.
Then commit the file to version control.
---更新---
我看到你的回购,然后登上heroku http://warm-depths-3154.herokuapp.com/,按照步骤
rm -Rf gopack.config .godir .gopack
godep save
git add --all . // please commit the Godep folder
git commit -m 'using godep, removed gopack'
(提交https://github.com/dukex/gournay/commit/0de2390835357879a34ea452a56eeeb6391e5ba8)