迁移到 Cloud Code for IntelliJ

本文档介绍如何将基于 IntelliJ 的 App Engine 项目迁移到 Cloud Code for IntelliJ。

准备工作

  • 如果您的项目基于 Maven 或 Gradle,并且使用基于 App Engine SDK 的旧版插件(例如 com.google.appengine.appengine-maven-plugincom.google.appengine:gradle-appengine-plugin),则应首先迁移到基于 gcloud CLI 的新 MavenGradle 插件。

  • 新插件不支持 Datanucleus 增强功能。如果您依赖于此功能,则必须手动配置 Datanucleus(JDOJPA)增强功能,以便将项目迁移到 Cloud Code。 在对 Datastore 执行读取/写入操作时,您应该使用 Objectify 作为 ORM 层。

安装新插件

如果您尚未安装新插件,请执行以下操作来进行安装:

  • 确保您在计算机的 PATH 上安装了受支持的 IDE 版本、JetBrains IDE 2022.3 及更高版本(如 IntelliJ Ultimate 版/Community 版、PyCharm Professional 版/Community 版、WebStorm、GoLand)。
  • 打开 IntelliJ IDEA(或任何受支持的 JetBrains IDE)。
  • 使用 File > Settings > Plugins 打开插件市场窗口。对于 Mac OS X,请使用 IntelliJ IDEA > Preferences > Plugins
  • 搜索“Cloud Code”插件并进行安装。

    系统可能会提示您重启 IDE 以激活该插件。

配置 IntelliJ 和您的项目

安装插件后,请配置 IntelliJ 和您的项目以使用新插件,如下所示:

  1. 如果系统提示新插件与现有 App Engine 集成冲突,请点击提示中的链接。

    显示插件冲突通知的屏幕截图。点击“点击此处”可停用该插件。

  2. 在以下“停用插件”提示中,选择“停用并重启”以停用 App Engine 插件,然后重启 IDE 以使插件配置更改生效。

    显示提示是否要停用 App Engine 插件并重启 IDE 的屏幕截图。

  3. 如果系统提示您的项目格式太旧,请点击 Convert 以将项目转换为新格式。

  4. 您应该删除现有的 App Engine 服务器和 Cloud 实例,然后使用新的 gcloud CLI 重新创建它们。

    1. 转到设置 > 构建、执行、部署 (Build, Execution, Deployment) > 应用服务器 (Application Servers)。

    2. 选择您的 App Engine 开发实例,然后点击删除 (-)。

    3. 点击 Add (+) 并选择 Google App Engine Dev Server

      显示应用服务器列表以及删除和添加图标的屏幕截图。

    4. 转到设置 > 构建、执行、部署 (Build, Execution, Deployment) > Clouds

    5. 选择您的 Google App Engine 云实例,然后点击删除 (-)。

    6. 点击 Add (+) 以配置 App Engine 云部署目标。

      显示云实例列表以及删除和添加图标的屏幕截图。

  5. 如果您有任何 App Engine 本地服务器运行配置,则必须将其更新为使用新配置的应用服务器。

  6. 导航到 Tools > Cloud Code > App Engine 以查看可用于运行和部署应用的操作列表,或如需了解详情,请参阅文档

  7. 对于基于 Maven 或 Gradle 的项目,请确保您使用的是最新版本的 Gradle 和 Maven App Engine 插件。

配置特定于 IntelliJ 的项目

请仅为特定于 IntelliJ 的项目(即,使用旧 App Engine 构面手动配置项目设置且未从 Gradle 或 Maven 同步的项目)更新 App Engine 依赖项。

您的 App Engine 依赖项仍配置为“外部库”(External Libraries),并由旧的 App Engine SDK 安装提供。如果删除安装的 App Engine SDK,应用将无法编译。

显示外部库列表的屏幕截图。

如需移除对旧 App Engine SDK 的这种依赖关系,请使用 App Engine Facet 库导入功能配置 App Engine API 依赖项,如下所示:

  1. 旧插件的 Datanucleus JDO/JPA 增强功能的用户需要将应用移植到 Maven 或 Gradle,因为 Cloud Code 插件不支持 Datanucleus 增强功能。

  2. 从 IntelliJ 项目结构界面中,转到 App Engine 标准模块的依赖项标签。

  3. 移除所有 App Engine 相关库。

    显示外部库列表以及删除图标的屏幕截图。

  4. 在同一个项目结构界面中,转到 App Engine 模块的 Google App Engine 构面。

  5. Libraries 面板中,选择您正在使用的 App Engine 依赖项。

    显示可供选择的库列表的屏幕截图。

    此操作将自动从 Maven Central 中检索这些依赖项,并将它们添加到您的模块类路径中。

  6. 在本地运行并部署以验证新配置是否正常工作。

  7. 此时,您可以安全地删除旧的 App Engine SDK。

获取支持

如需在 IntelliJ IDE 中提交反馈或报告问题,请依次前往 Tools > Cloud Code > Help / About > Submit feedback or Report an issue,以便在 GitHub 上报告问题,或者在 Stack Overflow 上提问。