1

我创建了一个 Spring MVC 项目,可以很好地部署到我的 GAE 实例。现在我正在努力做到这一点,以便我可以使用 IntelliJ 将它部署到 flex 环境中,但没有运气。

我的项目结构如下:

\src
   \main
       \appengine
            app.yaml
       \java
            normal java project files
       \resources
            property files

当在 IntelliJ 中创建“Google App Engine 部署”的新运行配置时,设置/环境始终为“App Engine 标准环境”。我似乎无法让它成为灵活环境的一部分。

我当前的 app.yaml:

runtime: java
env: flex

handlers:
- url: /.*
  script: this field is required, but ignored

runtime_config:  # Optional
  jdk: openjdk8
  server: jetty9

manual_scaling:
  instances: 1

我已经尝试复制我可以从github上的示例项目中找到的所有设置

这是我的部署截图 在此处输入图像描述

4

2 回答 2

3

你的项目中是否也有一个appengine-web.xml配置文件?如果是这样,这将取代任何 flex 配置,并且插件将采用 App Engine 标准部署。

如果是这样,请尝试将其删除(或重命名),然后重新创建部署运行配置。此时应将其标记为针对 App Engine 柔性环境。

如果您没有此配置文件(或者如果重命名它没有帮助,或者如果您的部署源列表不包含任何 war/jar 工件),那么您可能有一个本机 IntelliJ 项目(不是用Maven / Gradle 等)并且您的 Artifact 设置不足。

为了使您的目标工件可部署到 App Engine flexible,您需要确保设置了非爆炸工件(如果您的项目有嵌入式服务器,则可以是战争或 jar):

  • 打开模块设置:右键单击项目的根目录 -> 模块设置
  • 点击左侧的“神器”
  • 检查您列出的工件类型。
    • 如果它只是一场爆炸战争,那么尝试创建一个新的战争(非爆炸)工件 - 选择 Web 应用程序存档,然后选择你的模块
    • 保存它,然后重新检查您的部署运行配置
于 2017-04-04T14:35:02.410 回答
0

我确定您已经这样做了,但也许您只是错过了一些简单的事情:灵活的环境需要一个特殊的 IntelliJ 插件,用于 IntelliJ 的云工具(安装快速入门说明)。

于 2017-05-02T03:10:53.193 回答