配置并使用 Gradle Groovy - Amazon CodeCatalyst

Amazon CodeCatalyst 不再向新客户开放。现有客户可以继续正常使用该服务。有关更多信息,请参阅 如何从 CodeCatalyst 迁移

配置并使用 Gradle Groovy

要在 CodeCatalyst 中使用 Gradle Groovy,您必须将 Gradle Groovy 连接到您的程序包存储库,并提供用于身份验证的个人访问令牌(PAT)。您可以查看有关在 CodeCatalyst 控制台中将 Gradle Groovy 连接到程序包存储库的说明。

从 CodeCatalyst 获取依赖项

以下说明介绍如何配置 Gradle Groovy 以获取 CodeCatalyst 程序包存储库的依赖项。

使用 Gradle Groovy 从 CodeCatalyst 程序包存储库获取依赖项
  1. 通过访问 https://codecatalyst.aws/ 打开 CodeCatalyst 控制台。

  2. 导航到您的项目。

  3. 在导航窗格中,选择程序包

  4. 从程序包存储库列表中,选择您的程序包存储库。

  5. 选择连接到存储库

  6. 连接到存储库对话框中,从程序包管理器客户端列表中选择 Gradle Groovy

  7. 您将需要个人访问令牌(PAT)才能使用 CodeCatalyst 对 Gradle Groovy 进行身份验证。如果您已有一个 PAT,则可以使用它。如果没有 PAT,您可以在此处创建一个。

    1. 选择创建令牌

    2. 选择复制以复制您的 PAT。

      警告

      关闭此对话框后,您将无法再次查看或复制您的 PAT。

  8. 使用您的访问凭证更新您的 gradle 属性文件。将 username 替换为您的 CodeCatalyst 用户名,然后将 PAT 替换为您的 CodeCatalyst 个人访问令牌。您可以对 spaceUsernamespacePassword 使用任何值,前提是在以下步骤中使用相同的值。

    spaceUsername=username spacePassword=PAT
  9. 要在 Gradle 构建中从 CodeCatalyst 获取依赖项,请复制 maven 代码片段并将它添加到项目的 build.gradle 文件的 repositories 部分。替换以下值。您可以对 spaceName 使用任何值,前提是在以下步骤中使用相同的值。

    注意

    如果通过控制台指令进行复制,则以下值将进行更新且不应更改。

    • space_name 替换为您的 CodeCatalyst 空间名称。

    • proj_name 替换为您的 CodeCatalyst 项目名称。

    • repo_name 替换为您的 CodeCatalyst 程序包存储库名称。

    maven { name = 'spaceName' url = uri('https://packages.region.codecatalyst.aws/maven/space_name/proj_name/repo_name/') credentials(PasswordCredentials) }
  10. (可选)要使用 CodeCatalyst 程序包存储库作为项目依赖项的唯一来源,请从 build.gradle 文件中移除存储库中的任何其他部分。如果您有多个存储库,Gradle 会按照列出的顺序在每个存储库中搜索依赖项。

从 CodeCatalyst 获取插件

默认情况下,Gradle 会解析来自公有 Gradle 插件门户的插件。以下步骤会将 Gradle 项目配置为解析 CodeCatalyst 程序包存储库中的插件。

使用 Gradle 从 CodeCatalyst 程序包存储库获取插件
  1. 通过访问 https://codecatalyst.aws/ 打开 CodeCatalyst 控制台。

  2. 导航到您的项目。

  3. 在导航窗格中,选择程序包

  4. 从程序包存储库列表中,选择您的程序包存储库。

  5. 选择连接到存储库

  6. 连接到存储库对话框中,从程序包管理器客户端列表中选择 Gradle

  7. 您将需要个人访问令牌(PAT)才能使用 CodeCatalyst 对 Gradle 进行身份验证。如果您已有一个 PAT,则可以使用它。如果没有 PAT,您可以在此处创建一个。

    1. 选择创建令牌

    2. 选择复制以复制您的 PAT。

      警告

      关闭此对话框后,您将无法再次查看或复制您的 PAT。

  8. 使用您的访问凭证更新您的 gradle 属性文件。将 username 替换为您的 CodeCatalyst 用户名,然后将 PAT 替换为您的 CodeCatalyst 个人访问令牌。您可以对 spaceUsernamespacePassword 使用任何值,前提是在以下步骤中使用相同的值。

    spaceUsername=username spacePassword=PAT
  9. settings.gradle 文件中添加一个 pluginManagement 块。pluginManagement 块必须出现在 settings.gradle 中的任何其他语句之前。替换以下值。

    注意

    如果通过控制台指令进行复制,则以下值将进行更新且不应更改。

    • spaceName 替换为上一步骤中使用的名称值。

    • space_name 替换为您的 CodeCatalyst 空间名称。

    • proj_name 替换为您的 CodeCatalyst 项目名称。

    • repo_name 替换为您的 CodeCatalyst 程序包存储库名称。

    pluginManagement { repositories { maven { name = 'spaceName' url = uri('https://packages.region.codecatalyst.aws/maven/space_name/proj_name/repo_name/') credentials(PasswordCredentials) } } }

    这将确保 Gradle 会解析来自指定存储库的插件。存储库必须已配置与 Gradle 插件门户(gradle-plugins-store)的上游连接,以便构建可以使用通常所需的 Gradle 插件。有关更多信息,请参阅 Gradle 文档

通过 CodeCatalyst 从外部程序包存储库获取程序包

您可以通过为 CodeCatalyst 存储库配置与代表网关存储库的网关的上游连接,使用 CodeCatalyst 存储库从公共存储库安装 Maven 程序包。从网关存储库安装的程序包会被摄取并存储在您的 CodeCatalyst 存储库中。

CodeCatalyst 支持以下公共 Maven 程序包存储库。

  • maven-central-gateway

  • google-android-gateway

  • gradle-plugins-gateway

  • commonsware-gateway

从公共 Maven 程序包存储库安装程序包
  1. 如果尚未执行此操作,请按照从 CodeCatalyst 获取依赖项从 CodeCatalyst 获取插件中的步骤操作,对 CodeCatalyst 程序包存储库配置 Gradle。

  2. 确保您的存储库已将要从中安装的网关存储库添加为上游连接。为此,您可以按照添加上游存储库中的说明操作,并选择要作为上游添加的公共程序包存储库。

有关从上游存储库请求程序包的更多信息,请参阅请求包含上游存储库的程序包版本

将程序包发布到 CodeCatalyst

此部分介绍如何将使用 Gradle Groovy 构建的 Java 库发布到 CodeCatalyst 存储库。

使用 Gradle Groovy 将程序包发布到 CodeCatalyst 程序包存储库
  1. 通过访问 https://codecatalyst.aws/ 打开 CodeCatalyst 控制台。

  2. 在项目的概述页面上,选择程序包

  3. 从程序包存储库列表中,选择您的程序包存储库。

  4. 选择连接到存储库

  5. 连接到存储库对话框中,从程序包管理器客户端列表中选择 Gradle Groovy

  6. 您将需要个人访问令牌(PAT)才能使用 CodeCatalyst 对 Gradle 进行身份验证。如果您已有一个 PAT,则可以使用它。如果没有 PAT,您可以在此处创建一个。

    1. 选择创建令牌

    2. 选择复制以复制您的 PAT。

      警告

      关闭此对话框后,您将无法再次查看或复制您的 PAT。

  7. 使用您的访问凭证更新您的 gradle 属性文件。将 username 替换为您的 CodeCatalyst 用户名,然后将 PAT 替换为您的 CodeCatalyst 个人访问令牌。您可以对 spaceUsernamespacePassword 使用任何值,前提是在以下步骤中使用相同的值。

    spaceUsername=username spacePassword=PAT
  8. maven-publish 插件添加到项目的 build.gradle 文件的 plugins 部分。

    plugins { id 'java-library' id 'maven-publish' }
  9. 接下来,在项目 build.gradle 文件中添加一个 publishing 部分。替换以下值。

    注意

    如果通过控制台指令进行复制,则以下值将进行更新且不应更改。

    • space_name 替换为您的 CodeCatalyst 空间名称。

    • proj_name 替换为您的 CodeCatalyst 项目名称。

    • repo_name 替换为您的 CodeCatalyst 程序包存储库名称。

    publishing { publications { mavenJava(MavenPublication) { groupId = 'group-id' artifactId = 'artifact-id' version = 'version' from components.java } } repositories { maven { name = 'spaceName' url = uri('https://packages.region.codecatalyst.aws/maven/space_name/proj_name/repo_name/') credentials(PasswordCredentials) } } }

    maven-publish 插件根据 publishing 部分中指定的 groupIdartifactIdversion 生成 POM 文件。

  10. build.gradle 作出的这些更改完成后,运行以下命令来构建项目并将其上传到存储库。

    ./gradlew publish
  11. 在 CodeCatalyst 控制台中导航到您的程序包存储库,以检查是否已成功发布程序包。您应在程序包存储库的程序包列表中看到该程序包。

有关更多信息,请参阅 Gradle 网站上的以下主题:

在 IntelliJ IDEA 中运行 Gradle 构建

您可以在 IntelliJ IDEA 中运行 Gradle 构建,从 CodeCatalyst 拉取依赖项。要使用 CodeCatalyst 对 Gradle 进行身份验证,您必须使用个人访问令牌(PAT)。您可以将 CodeCatalyst PAT 存储在 gradle.properties 中或选定的单独文件中。

方法 1:将 PAT 放入 gradle.properties

如果您未使用 gradle.properties 文件并且能够用 PAT 覆盖其内容,请使用此方法。如果您使用 gradle.properties,则可以修改此方法以添加 PAT,而不是覆盖文件内容。

注意

该示例显示了位于 GRADLE_USER_HOME 中的 gradle.properties 文件。

首先,创建一个 PAT(如果您没有 PAT)。

创建个人访问令牌(PAT)
  1. 在顶部菜单栏中,选择您的个人资料徽章,然后选择我的设置

    提示

    您还可以通过转到项目或空间的成员页面,然后从成员列表中选择您的姓名,找到您的用户个人资料。

  2. PAT 名称中,为您的 PAT 输入描述性名称。

  3. 到期日期中,保留默认日期,或者选择日历图标以自定义日期。到期日期默认为从当前日期起一年后。

  4. 选择创建

    当为源存储库选择克隆存储库时,也可以创建此令牌。

  5. 将 PAT 密钥保存在安全位置。

    重要

    PAT 密钥仅显示一次。关闭窗口后将无法再检索该密钥。

接下来,使用以下代码段来更新 build.gradle 文件:

repositories { maven { name = 'spaceName' url = uri('https://packages.region.codecatalyst.aws/maven/space_name/proj_name/repo_name/') credentials(PasswordCredentials) } }

方法 2:将 PAT 放入单独的文件中

如果您不想修改 gradle.properties 文件,请使用此方法。

首先,创建一个 PAT(如果您没有 PAT)。

创建个人访问令牌(PAT)
  1. 在顶部菜单栏中,选择您的个人资料徽章,然后选择我的设置

    提示

    您还可以通过转到项目或空间的成员页面,然后从成员列表中选择您的姓名,找到您的用户个人资料。

  2. PAT 名称中,为您的 PAT 输入描述性名称。

  3. 到期日期中,保留默认日期,或者选择日历图标以自定义日期。到期日期默认为从当前日期起一年后。

  4. 选择创建

    当为源存储库选择克隆存储库时,也可以创建此令牌。

  5. 将 PAT 密钥保存在安全位置。

    重要

    PAT 密钥仅显示一次。关闭窗口后将无法再检索该密钥。

将 PAT 放在单独的文件中
  1. 使用以下代码段来更新 build.gradle 文件。将 space_nameproj_namerepo_name 替换为您的 CodeCatalyst 用户名、空间名称、项目名称和程序包存储库名称。

    def props = new Properties() file("fileName").withInputStream { props.load(it) } repositories { maven { name = 'spaceName' url = uri('https://packages.region.codecatalyst.aws/maven/space_name/proj_name/repo_name/') credentials(PasswordCredentials) } } }
  2. 将 PAT 写入在 build.gradle 文件中指定的文件:

    echo "codecatalystArtifactsToken=PAT" > fileName