使用 Apache Maven 和 App Engine 插件(基于 Google Cloud CLI)

本页面介绍如何使用 Apache Maven管理用于 Cloud Endpoints Frameworks API 的 App Engine 项目。 Apache Maven 是一款软件项目管理和理解工具,该工具能够构建用于部署到 App Engine 的 Web 应用软件包 (WAR) 文件。Google 提供的插件和 Maven 原型适用于 Maven 3.3.9 或更高版本。

Maven 会从 App Engine SDK 下载 Java 库。您可以使用 Maven 在本地测试您的应用并将其部署到 App Engine。

前期准备

  1. 使用 Google Cloud 控制台创建和设置 Google Cloud 项目:

    转到 App Engine

    1. 选择或创建一个新 Google Cloud 项目。
    2. 如果您需要为项目创建 App Engine 应用, 请按照提示选择要放置 App Engine 应用的区域
  2. 下载并安装 gcloud CLI,然后初始化 Google Cloud CLI。

    如果您已安装 Google Cloud CLI,并且想要将其设置为使用与初始化时不同的 Google Cloud 项目 ID,请参阅管理 gcloud CLI 配置

  3. 安装 gcloud CLI app-engine-java 组件:
    gcloud components install app-engine-java

    注意:要确保安装了最新的 Java 版 gcloud CLI,请运行 gcloud components update

  4. 如果您没有安装 Java,请下载 Java,然后进行安装和配置。
  5. 在项目的 pom.xml 中设置 Java 编译器标志,以指定 Java 8 字节代码:
    <properties>
      <maven.compiler.source>1.8</maven.compiler.source>
      <maven.compiler.target>1.8</maven.compiler.target>
    </properties>
  6. 您必须已安装 Apache Maven 3.3.9 或更高版本。 要确定您的 Maven 版本,请运行以下命令:
     mvn -v
  7. 如果您尚未安装相应版本的 Maven,请执行以下操作:
    1. 从 Maven 网站下载 Maven 3.3.9 或更高版本。
    2. 在本地机器上安装 Maven。

      注意:Linux 用户可能需要下载 Maven,而非使用 apt-get install

向现有项目添加 App Engine Maven 插件(可选)

要在现有 Maven 项目中使用 App Engine Maven 插件 ,请将以下内容添加到项目 pom.xml 文件的 plugins 部分中:

<plugin>
   <groupId>com.google.cloud.tools</groupId>
   <artifactId>appengine-maven-plugin</artifactId>
   <version>2.8.7</version>
</plugin>

选择 App Engine 原型

通过 Maven 原型 ,用户可使用涵盖常见 场景的模板来创建 Maven 项目。App Engine 利用此 Maven 功能来 提供一些非常有用的 App Engine 原型 在 Maven Central 中。选择适合您的应用的 App Engine 原型:

应用类型 制品 说明
App Engine Endpoints Frameworks endpoints-skeleton-archetype 生成一个新的空白 App Engine Endpoints Frameworks 后端 API 项目(包含所需文件和目录),以备您自己的类和资源使用。
App Engine Endpoints Frameworks hello-endpoints-archetype 为 App Engine 后端 API 项目生成一个入门级 Endpoints Frameworks,以备构建和运行之用。

使用 Maven 创建新项目

在项目创建期间,Maven 会提示您提供项目的 groupIdartifactIdversionpackage

术语 含义
groupId Maven 中用于跟踪工件的命名空间。如果用户在自己的 Maven 项目中使用您的项目,则他们将需要为相关依赖项指定此属性。
artifactId 您的项目在 Maven 中的名称。如果您的项目的使用方需要您为他们的 Maven 项目提供支持,则他们还需要指定此属性。
version 生成项目时需要使用的 Maven 初始版本。最好为 version 添加 -SNAPSHOT 后缀,因为这样可以在 Maven 版本插件中为开发中的版本提供支持。如需了解详情,请参阅关于使用版本插件的