如何将多个Java服务部署到同一个GCP项目

时间:2016-10-19 08:36:41

标签: java google-app-engine google-cloud-platform

如何将多个Java services部署到同一个GCP项目?

在appengine-web.xml [1] 中指定项目ID的文档中有一些提及;

  

<application>元素包含应用程序的项目ID。这是您在Google Cloud Platform Console中创建项目时注册的项目ID。

gcloudmvn [1] [2] (强调我的)忽略了它:

  

gcloud 和gcloud工具(Intellij,Gradle,和新的maven插件忽略此元素

  

请注意,虽然每个appengine-web.xml文件都必须包含<application>标记,您提供的名称将被忽略。应用程序的名称取自appengine-application.xml文件中的<application>标记。

最后一句话似乎适用于Java 8 / Jetty 9运行时。

java-gae-quickstart项目没有appengine-application.xml文件。

[1] - appengine-web.xml Reference

[2] - Organizing xml Configuration Files

1 个答案:

答案 0 :(得分:3)

以下是使用模块的示例项目:https://github.com/GoogleCloudPlatform/appengine-modules-sample-java

注意:

  • 有一个“ear”模块,它不包含代码,但有一个application.xml。该文件定义了项目的模块。
  • 重要的是有一个模块(除了“ear”之外)没有定义模块名称(在appengine-web.xml中)或模块名称为“default”。这也是用于配置数据存储索引,cron等的模块。
  • 为了部署所有模块,您可以转到耳模块并执行mvn appengine:update