去包冲突
Go Package Conflict
我是 Go 和 AppEngine 的新手。我试图弄清楚如何创建包,但我一直 运行 陷入冲突。我的目录结构如下:
GOPATH
third-party-libs
app
app.yaml
controllers
default.go -- package controllers
models
models.go -- package models
templates
templates.go -- package templates
我在 default.go
中按如下方式导入模板包 import ("app/templates")
当我执行 goapp serve
时出现此错误:
Failed parsing input: app file templates.go conflicts with
same file imported from GOPATH
我已经尝试了很多东西,但到目前为止没有任何效果。这些是我尝试过的东西:
将templates
目录改为apptemplates
,对应文件改为apptemplates.go
,包名改为apptemplates
。我将其导入为 app/apptemplates
我通过更改文件名而不是包名尝试了不同的组合,反之亦然,等等。要么找不到文件,要么有冲突。
我正在我的 templates.go
文件中导入 html/template
。所以我注释掉了整个文件,只保留了包声明,但并没有让冲突消失
我认为可能是另一个文件名为 templates.go 但是当我这样做时(在 GOPATH
级别)find . -name "*.go" | grep "templates.go"
我只看到我创建的一个文件。
我对包的创建方式感到困惑。我已将名称更改为通用名称,因此它看起来不像是命名问题。有人可以告诉我如何调试这个错误吗?
谢谢!
将包重命名为#1 中不冲突的名称。使用路径 "apptemplates" 导入包。
应用程序目录(包含 app.yaml 的目录)内的包使用相对于应用程序目录的路径导入。有关完整详细信息,请参阅 Organizing Go Apps。
我是 Go 和 AppEngine 的新手。我试图弄清楚如何创建包,但我一直 运行 陷入冲突。我的目录结构如下:
GOPATH
third-party-libs
app
app.yaml
controllers
default.go -- package controllers
models
models.go -- package models
templates
templates.go -- package templates
我在 default.go
import ("app/templates")
当我执行 goapp serve
时出现此错误:
Failed parsing input: app file templates.go conflicts with
same file imported from GOPATH
我已经尝试了很多东西,但到目前为止没有任何效果。这些是我尝试过的东西:
将
templates
目录改为apptemplates
,对应文件改为apptemplates.go
,包名改为apptemplates
。我将其导入为app/apptemplates
我通过更改文件名而不是包名尝试了不同的组合,反之亦然,等等。要么找不到文件,要么有冲突。
我正在我的
templates.go
文件中导入html/template
。所以我注释掉了整个文件,只保留了包声明,但并没有让冲突消失
我认为可能是另一个文件名为 templates.go 但是当我这样做时(在 GOPATH
级别)find . -name "*.go" | grep "templates.go"
我只看到我创建的一个文件。
我对包的创建方式感到困惑。我已将名称更改为通用名称,因此它看起来不像是命名问题。有人可以告诉我如何调试这个错误吗?
谢谢!
将包重命名为#1 中不冲突的名称。使用路径 "apptemplates" 导入包。
应用程序目录(包含 app.yaml 的目录)内的包使用相对于应用程序目录的路径导入。有关完整详细信息,请参阅 Organizing Go Apps。