如何在GAE中导入本地Go包

时间:2011-11-03 03:00:31

标签: google-app-engine go

如何在Golang + GAE中导入本地包?

我想要这样的事情:

app/
-app.yaml
-/my_app
--my_app.go
--/package1
---package1.go

my_app.go的列表:

package my_app

import (
  "http"
  "./package1"
)

func init() {
  http.HandleFunc("/", package1.index)
}

package1.go的列表:

package package1

import (
  "http"
  "fmt"
)

func index (w http.ResponseWriter, r * http.Request) {
  fmt.Fprint(w, "I'm index page =) ")
}

我是这样的,我有一个错误:

/path/to/project/my_app/my_app.go:5: can't find import: ./package1
2011/11/03 10:50:51 go-app-builder: Failed building app: failed running 6g: exit status 1

感谢您的帮助。

2 个答案:

答案 0 :(得分:6)

正如对dupoxy的回答的评论中所述,在给定情况下导入本地包的方法是导入为"my_app/package1"

import (
    "http"
    "my_app/package1"
)

答案 1 :(得分:1)

您需要将软件包链接或复制到您的应用程序目录。相对于应用程序目录根目录的路径应与导入路径匹配。要使用package1,您应该配置您的app目录如下所示:

app.yaml
yourapp/yourapp.go
package1/package1.go

<击> 来自https://groups.google.com/d/msg/golang-nuts/coEvrWIJGTs/75GzcefKVcIJ