将 EAR 应用程序从 AppEngine 迁移到 Google Cloud SDK
Migrating an EAR application from AppEngine to Google Cloud SDK
自去年 8 月 30 日 App Engine 生命周期结束以来,无法再使用 Appengine (appcfg
) 命令行将更新部署到同一应用程序。
我使用的是 appengine maven 插件,后者又使用 appcfg 来部署我的应用程序。
我现在正在研究如何将我的应用程序迁移到 Google Cloud SDK,但在我发现 Google Cloud SDK 不支持部署 EAR 应用程序的限制之间。
令我惊讶的是我的应用程序确实具有 EAR 结构。
是否有解决此问题的方法,或者我应该完全更改应用程序的结构?
您根本不必更改您的应用程序结构。它只是稍微改变了部署。
之前,您曾经创建 war 个工件并将它们打包到可部署的耳朵中。
现在您一直在创建相同的 war 工件,但您不能将它们打包到耳朵中。相反,您可以使用 gcloud 命令将它们全部部署在一起:
gcloud 应用部署 ./path_module1/WEB-INF/appengine-web.xml ./path_module2/WEB-INF/appengine-web.xml
path_moduleX 是分解工件的路径(当然不是源代码的路径)
如此处所述https://cloud.google.com/appengine/docs/standard/java/configuration-files
自去年 8 月 30 日 App Engine 生命周期结束以来,无法再使用 Appengine (appcfg
) 命令行将更新部署到同一应用程序。
我使用的是 appengine maven 插件,后者又使用 appcfg 来部署我的应用程序。
我现在正在研究如何将我的应用程序迁移到 Google Cloud SDK,但在我发现 Google Cloud SDK 不支持部署 EAR 应用程序的限制之间。
令我惊讶的是我的应用程序确实具有 EAR 结构。
是否有解决此问题的方法,或者我应该完全更改应用程序的结构?
您根本不必更改您的应用程序结构。它只是稍微改变了部署。
之前,您曾经创建 war 个工件并将它们打包到可部署的耳朵中。
现在您一直在创建相同的 war 工件,但您不能将它们打包到耳朵中。相反,您可以使用 gcloud 命令将它们全部部署在一起:
gcloud 应用部署 ./path_module1/WEB-INF/appengine-web.xml ./path_module2/WEB-INF/appengine-web.xml
path_moduleX 是分解工件的路径(当然不是源代码的路径)
如此处所述https://cloud.google.com/appengine/docs/standard/java/configuration-files