我创建了一个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上的示例项目中找到的所有设置

这是我的部署的屏幕截图
java - 如何在Google App Engine Flex上获取intelliJ Java项目-LMLPHP

最佳答案

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

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

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

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


打开模块设置:右键单击项目的根目录->模块设置
点击左侧的“工件”
检查您列出的工件类型。


如果只是爆炸式战争,则尝试创建新的战争(非爆炸式)工件-选择Web应用程序归档文件,然后选择模块
保存此内容,然后重新检查您的部署运行配置

关于java - 如何在Google App Engine Flex上获取intelliJ Java项目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43073707/

10-14 23:46
查看更多