问题描述
我正在尝试使用 mux 进行路由将 Go Web 应用程序部署到 Cloud Foundry。我的应用程序还包含一些其他依赖项,如下所述。但是,go.mod 文件、清单文件或 gorilla/mux 存储库的 go.mod 文件(极不可能)存在问题。
这是在输入 go mod init 然后 go build 时创建的 go.mod 文件。
module deployment_automation_tool
go 1.15
require (
github.com/gorilla/mux v1.8.0
github.com/jinzhu/gorm v1.9.16
github.com/mattn/go-sqlite3 v1.14.6
)
这是清单:
---
applications:
- name: deployment_automation_tool
buildpacks:
- go_buildpack
env:
GOPACKAGENAME : deployment_automation_tool
但是,我不断收到此错误:
**ERROR** problem retrieving main package name: go: github.com/gorilla/[email protected]: reading github.com/gorilla/mux/go.mod at revision v1.8.0: unkNown revision v1.8.0
**ERROR** Unable to determine import path: exit status 1
Failed to compile droplet: Failed to run finalize script: exit status 12
Exit status 223
解决方法
我通过使用 dep 而不是 Go 模块解决了这个问题。它在其官方文档中提到它已被弃用,但我发现它可以完美地与 go_buildpack 一起使用。 如果我找到一种使用 go 模块将其推送到 CF 的方法,我会更新答案。