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

如何正确导入Golang appengine?

颛孙越
2023-03-14
问题内容

在我用Go编写的Google App Engine项目中,我一直在使用例如

import "appengine/datastore"

在很长一段时间内都取得了成功,并假设导入将我拥有App Engine SDK的地方定位。但是,现在我也想使用Google的第三方库,该库也使用App
Engine的东西,但是要以完整路径导入:

import "google.golang.org/appengine"

运行应用

$ goapp serve

未能找到appengine失败:

...go/src/golang.org/x/oauth2/client_appengine.go:16: can't find import: "google.golang.org/appengine/urlfetch"

Can't find package "google.golang.org/appengine" in $GOPATH

显然,我希望使用相同的App Engine部件来避免其他问题。我的第一步是要告诉第三方库使用App Engine
SDK库,但我不知道该怎么做,因为它在导入中具有不同的前缀。

我应该在项目中为所有App Engine导入使用完整路径吗?这与我在Google的Golang App
Engine网页上阅读的内容完全相反。例如这里。

通常,设置内容的方式是什么,以便它可以在App Engine的开发和生产中以及从第三方库中找到合适的Appengine库?

在此先感谢您的帮助!

更新

我还可以看到,在添加了第三方库并运行go get它之后,将各种东西都提取到$GOPATH/src/google.golang.org/api/...。那里有很多东西,还有appengine等等。似乎所有的Golang
Google API都是…!

因此,该问题尚未解决,但我了解到有一个变化,该变化更改为完全限定的appengine导入路径。

现在,当我拉入新的appengine来满足使用新导入路径的oauth库时,我的应用程序将在本地运行。

go get google.golang.org/appengine

根据此:

如果您不想更新整个应用程序以使用新的App Engine程序包,则可以并行使用两组程序包,仅使用带有oauth2程序包的新程序包。

实际上非常令人困惑,我不知道在App Engine上进行部署时可以使用哪些功能。有人知道吗?


问题答案:

就像您的更新所说;您可以同时使用 两种类型 的导入(在同一代码段中),而同时又不赞成使用旧的API并完成新的API:

大多数App Engine服务都可以通过完全相同的API获得。清理了一些API,有些还不可用。

(来源,离您的链接之一稍远)

如果您需要同时使用两者appenginegoogle.golang.org/appengine则可以为导入路径添加别名以使其成为可能。就像是:

import (
   oldAppengine "appengine"
   "google.golang.org/appengine"
)

或任何您想命名的名称。

如果在部署时某些内容不可用,则会在构建时出现错误,并且不会将其部署到App Engine,因此您不必为此担心。



 类似资料:
  • 我正在尝试导入一个jar文件。我的文件“test.java”包含一行: 注意:我使用的是Mac电脑。

  • 问题内容: 我看了很多类似的问题,但解决方案并没有帮助我:( 这是我的openjfx库 这是JFX文档 我可以通过两种方式导入库: 1.在Java构建路径中,我可以以 这种方式使用所有类,而不会出现任何问题……但是我无法加载Java文档或 源代码,如果这样做,它将无法正常工作。 要么… 2.编辑已安装的JRE定义 这种方式使我像其他问题中所解释的那样在已 安装的jre中添加jfxrt.jar,并为

  • 21:30:01 Gradle build完成,但在34秒内出现2个错误 错误:打包APK/home/daniela/androidstudioprojects/conectasp/app/build/outputs/APK/app-debug-unaligne期间文件重复。APK错误:任务“:app:packagedebug”执行失败。 APK meta-inf/license.txt文件1:/

  • 我试图通过手动将图像拖到eclipse或导入来解决这个问题。但正如下图所示,这些图像总是碰巧是一个文本文件。请帮忙! 放大,你可以看到导入的图像是一个文本文件,在这里输入图像描述 当我打开它: 在此输入图像描述

  • 问题内容: 有人可以为我提供关于类对象的一些指导,以及如何在我的项目中的另一个对象中引用它吗? 这是我的对象-request-api.js(注意:我知道它还没有进行很多操作,但是我想走路之前要走路) 这是我试图在其中引用的React Class组件: 我的React Component Class对象出现错误: 谁能为我提供一些见识/帮助? 问题答案: 由于不是静态方法,因此您需要先创建的实例,然

  • 注意:我知道有很多关于这个主题的帖子,我已经审阅了相当多的没有成功(请看我在这篇文章底部的参考资料)。 我正试图使用Visual Studio代码在TypeScript中运行一个非常简单的测试,其中我在一个文件中声明一个类并将其导入到另一个文件中。但是,我仍然遇到一个问题,我正在导入的文件无法识别我从另一个文件导出的类的方法。 此时我收到的确切错误消息是: [ts]属性“Get FirstName