当前位置: 首页 > 面试题库 >

Go App Engine专案的套件结构

太叔永新
2023-03-14
问题内容

我一直在关注Google App
Engine的Go教程

根据教程,我应该创建一个根项目目录,与该项目相关的所有源文件都应进入该目录。因此,我的工作区如下所示:

/MyProject
 /router
  router.go
 /items
  items.go

当我尝试在router.go中像这样引用items.go时:

router.go

    import(
        "items"
    )

    func itemsHandler(writer http.ResponseWriter, request * http.Request){
        anItem := items.Item{Id: 245,Name: "Chocolate",Price: 1.50};
    }

应用程序无法编译,是因为items is undefined现在我对应该如何组织Google App
Engine上的Go项目感到非常困惑。我想知道的是

  1. 我的项目目录应该位于Go SDK的gopath目录中还是可以位于任何地方?教程没有明确说明。

  2. Go App Engine项目的结构是什么,如何导入源文件?


问题答案:

您的问题的根源似乎是src目录丢失。。

  1. 是的,您的项目目录应该位于中GOPATH。Go希望目录结构遵循文档中描述的工作空间,其中描述了包含src目录中所有包的工作区。编译时,它在src文件夹(或pkg,如果已安装)下的gopath中查找软件包。尽管App Engine文档没有具体说明,但据我了解,该结构应与该src结构匹配。

  2. 目录结构的示例如下:从setting开始GOPATH=/myproject。在的目录中GOPATH,具有以下结构(以您的某些软件包为例)。

        /src
     /MyApp/app.yaml
     /MyApp/myappmain.go
     /items/items.go
     /router/router.go

当我构建时,通过给它MyApp文件夹运行dev appserver dev_appserver ./MyApp

我已经通过将log.Println("<pkg>")每个软件包的init()func
进行了测试,它们都只运行一次,因为有人指出如果结构错误,这是一个问题。



 类似资料:
  • 问题内容: 我经常遇到这样的情况:我要存储的信息比Redis任何简单数据结构所能容纳的信息都要复杂。我仍然想使用Redis,但是我想知道人们在理想情况下是否希望使用嵌套结构使用任何标准替代方案? 问题答案: 您基本上有两种策略: 您可以序列化复杂对象并将其存储为字符串。我们建议使用json或msgpack作为序列化格式。这很容易从大多数客户端语言进行操作。如果需要服务器端访问,则服务器端的Lua脚

  • 现在注册页面可以使用了,该把应用部署到生产环境了。虽然我们从第 3 章就开始部署了,但现在应用才真正有点用,所以借此机会我们要把部署过程变得更专业一些。具体而言,我们要在生产环境的应用中添加一个重要功能,保障注册过程的安全性,还要把默认的 Web 服务器换成一个更适合在真实环境中使用的服务器。 为了部署,现在你应该把改动合并到 master 分支中: $ git add -A $ git comm

  • https://www.whyknown.com/ ===> 如何精通面试,获取前端面试资源,吊打大厂面试官,通过面试题查缺补漏,秋招、社招一战成名。免费开源前端|面试进阶之道,快来学习,会更新各大厂的面试真经和答案,每个面试题从源码角度和可调试、尝试角度出发,祝你成功!===> https://www.whyknown.com/ 希望大家多多评论转发。 https://www.whyknown.

  • 关于如何解决这个问题的想法吗?)

  • 我想获得有关使用Spring启动设置多模块 Maven 项目的帮助。 如果我错了,请纠正我,但是我知道Spring-Boot读取启动主应用程序(用< code > @ Spring Boot Application 注释,用< code > Spring Application . run 运行)并通过反射找到必要的类。这意味着它首先访问start类,然后继续寻找控制器、模型、存储库。如果是这样的

  • 问题内容: http://play.golang.org/p/f6ilWnWTjm 我正在尝试解码以下字符串,但仅获取空值。 如何在Go中解码嵌套的JSON结构? 我想将以下内容转换为地图数据结构。 问题答案: 在Go中使用嵌套结构来匹配JSON中的嵌套结构。 这是一个如何处理示例JSON的示例: 游乐场链接 您还可以对内部结构使用匿名类型: 游乐场链接 或外部和内部结构: 游乐场链接 如果您不知