配置并使用 mvn - Amazon CodeCatalyst

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

配置并使用 mvn

您可以使用 mvn 命令来运行 Maven 构建。您必须将 mvn 配置为使用程序包存储库,并提供用于身份验证的个人访问令牌(PAT)。

从中获取依赖关系 CodeCatalyst

mvn要配置为从 CodeCatalyst 存储库获取依赖项,必须编辑 Maven 配置文件settings.xml,也可以编辑项目的项目模型对象 (POM) 文件。POM 文件包含有关项目的信息以及 Maven 构建项目所需的配置信息,例如依赖项、构建目录、源目录、测试源目录、插件和目标。

用于mvn从 CodeCatalyst 软件包存储库中获取依赖项
  1. 打开 CodeCatalyst 控制台,网址为 https://codecatalyst.aws/

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

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

  4. 选择连接到存储库

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

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

    1. 选择创建令牌

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

      警告

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

  7. 将包含存储库的配置文件添加到 settings.xml 文件。替换以下值。

    注意

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

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

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

    • repo_name替换为你的 CodeCatalyst软件包存储库名称。

    <profiles> <profile> <id>repo_name</id> <activation> <activeByDefault>true</activeByDefault> </activation> <repositories> <repository> <id>repo_name</id> <url>https://packages.region.codecatalyst.aws/maven/space_name/proj_name/repo_name/</url> </repository> </repositories> </profile> </profiles>
  8. 将服务器添加到 settings.xml 文件中的服务器列表。替换以下值。

    注意

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

    • repo_name替换为你的 CodeCatalyst软件包存储库名称。

    • username用您的 CodeCatalyst 用户名替换。

    • PAT用您的 CodeCatalyst PAT 替换。

    <servers> <server> <id>repo_name</id> <username>username</username> <password>PAT</password> </server> </servers>
  9. (可选)在 settings.xml 文件中设置镜像,以捕获所有连接并将它们路由到您的存储库,而不是网关存储库。

    注意

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

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

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

    • repo_name替换为你的 CodeCatalyst软件包存储库名称。

    <mirrors> <mirror> <id>repo_name</id> <name>repo_name</name> <url>https://packages.region.codecatalyst.aws/maven/space_name/proj_name/repo_name/</url> <mirrorOf>*</mirrorOf> </mirror> </mirrors>
重要

可以在 <id> 元素中使用任何值,但必须与 <server><repository> 元素中的值相同。这样,就可以将指定的凭据包含在对的请求中 CodeCatalyst。

更改这些配置后,就可以构建项目了。

mvn compile

通过以下方式从外部软件包存储库获取软件包 CodeCatalyst

您可以通过存储库从公共存储库安装 Maven 软件包,方法是将其配置为与代表网关存储库的网关的上游连接。 CodeCatalyst从网关存储库安装的软件包会被提取并存储在您的存储 CodeCatalyst库中。

目前, CodeCatalyst 支持以下公共 Maven 软件包存储库。

  • maven-central-gateway

  • google-android-gateway

  • gradle-plugins-gateway

  • commonsware-gateway

从公共 Maven 程序包存储库安装程序包
  1. 如果您还没有,请mvn按照中的步骤使用您的 CodeCatalyst软件包存储库进行配置从中获取依赖关系 CodeCatalyst

  2. 确保您的存储库已将要从中安装的网关存储库添加为上游连接。要查看添加了哪些上游源或要将网关存储库添加为上游源,请按照添加上游存储库中的说明操作。

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

将包发布到 CodeCatalyst

要将 Maven 包发布mvn到 CodeCatalyst 存储库,还必须编辑~/.m2/settings.xml和项目 POM。

用于将包发布mvn到您的软件 CodeCatalyst 包存储库
  1. 打开 CodeCatalyst 控制台,网址为 https://codecatalyst.aws/

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

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

  4. 选择连接到存储库

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

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

    1. 选择创建令牌

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

      警告

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

  7. 在本地机器上使用 PAT 配置环境变量。您将在 setting.xml 文件中使用此环境变量。

    export CODECATALYST_ARTIFACTS_TOKEN=your_PAT
  8. settings.xml 中添加一个引用 CodeCatalyst_ARTIFACTS_TOKEN 环境变量的 <servers> 部分,以便 Maven 可在 HTTP 请求中传递令牌。

    <settings> ... <servers> <server> <id>repo-name</id> <username>username</username> <password>${env.CodeCatalyst_ARTIFACTS_TOKEN}</password> </server> </servers> ... </settings>
  9. <distributionManagement> 部分添加到项目的 pom.xml

    <project> ... <distributionManagement> <repository> <id>repo_name</id> <name>repo_name</name> <url>https://packages.region.codecatalyst.aws/maven/space_name/proj_name/repo_name/</url> </repository> </distributionManagement> ... </project>

更改这些配置后,就可以开始构建项目并将项目发布到指定的存储库。

mvn deploy

您可以在 CodeCatalyst 控制台中导航到您的软件包存储库,以检查软件包是否已成功发布。

发布第三方程序包

您可以使用将第三方 Maven 包发布到 CodeCatalyst 存储库。mvn deploy:deploy-file这对于想要发布程序包且只有 JAR 文件且无权访问程序包源代码或 POM 文件的用户很有用。

mvn deploy:deploy-file 命令会根据命令行中传递的信息生成 POM 文件。

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

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

    提示

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

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

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

  4. 选择创建

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

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

    重要

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

发布第三方 Maven 程序包
  1. 创建 ~/.m2/settings.xml 文件并输入以下内容:

    <settings> <servers> <server> <id>repo_name</id> <username>username</username> <password>PAT}</password> </server> </servers> </settings>
  2. 运行 mvn deploy:deploy-file 命令:

    mvn deploy:deploy-file -DgroupId=commons-cli \ -DartifactId=commons-cli \ -Dversion=1.4 \ -Dfile=./commons-cli-1.4.jar \ -Dpackaging=jar \ -DrepositoryId=repo-name \ -Durl=https://packages.region.codecatalyst.aws/maven/space-name/proj-name/repo-name/
    注意

    前面的示例发布 commons-cli 1.4。修改 groupID、artifactID、version 和 file 参数来发布另一个 JAR。

这些说明基于 Apache Maven 文档中关于 JARs 将第三方部署到远程存储库的指南中的示例。

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