View a markdown version of this page

使用 curl 发布程序包 - Amazon CodeCatalyst

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

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

使用 curl 发布程序包

本节介绍如何使用 HTTP 客户端将 Maven 软件包发布curl到软件 CodeCatalyst 包存储库。如果您的环境中没有 Maven 客户端或想要安装 Maven 客户端,则使用 curl 发布程序包会很有用。

发布带有 curl 的 Maven 软件包
  1. 您必须将个人访问令牌 (PAT) 存储到环境变量中才能curl进行身份验证 CodeCatalyst。如果您已有一个 PAT,则可以使用它。如果没有 PAT,则可以创建一个 PAT 并配置环境变量。

    1. 请按照使用个人访问令牌向用户授予对存储库的访问权限中的步骤操作来创建 PAT。复制 PAT 以将其存储在环境变量中。

    2. 在本地机器的命令行上,使用 PAT 配置环境变量。

      export CodeCatalyst_ARTIFACTS_TOKEN=your_PAT
  2. 使用以下curl命令将 JAR 发布到 CodeCatalyst存储库。将usernamespace_nameproj_name、和repo_name,替换为您的 CodeCatalyst 用户名、空间名称、项目名称和软件包存储库名称。

    curl --request PUT https://packages.region.codecatalyst.aws/maven/space-name/proj-name/repo-name/com/mycompany/app/my-app/1.0/my-app-1.0.jar \ --user "username:CodeCatalyst_ARTIFACTS_TOKEN" --header "Content-Type: application/octet-stream" \ --data-binary @target/path/to/my-app-1.0.jar
  3. 使用以下curl命令将 POM 发布到 CodeCatalyst存储库。将usernamespace_nameproj_name、和repo_name,替换为您的 CodeCatalyst 用户名、空间名称、项目名称和软件包存储库名称。

    curl --request PUT https://packages.region.codecatalyst.aws/maven/space-name/proj-name/repo-name/com/mycompany/app/my-app/1.0/my-app-1.0.pom \ --user "username:CodeCatalyst_ARTIFACTS_TOKEN" --header "Content-Type: application/octet-stream" \ --data-binary @target/my-app-1.0.pom
  4. 此时,Maven 软件包将在您的 CodeCatalyst 存储库中,状态为。Unfinished为了能够使用程序包,程序包必须处于 Published 状态。您可以Published通过将maven-metadata.xml文件上传Unfinished到您的包中或在 CodeCatalyst 控制台中更改状态来将包从移动到。

    1. 选项 1:使用以下 curl 命令将 maven-metadata.xml 文件添加到您的程序包中。将usernamespace_nameproj_name、和repo_name,替换为您的 CodeCatalyst 用户名、空间名称、项目名称和软件包存储库名称。

      curl --request PUT https://packages.region.codecatalyst.aws/maven/space-name/proj-name/repo-name/com/mycompany/app/my-app/maven-metadata.xml \ --user "username:CodeCatalyst_ARTIFACTS_TOKEN" --header "Content-Type: application/octet-stream" \ --data-binary @target/maven-metadata.xml

      以下是 maven-metadata.xml 文件的内容示例:

      <metadata modelVersion="1.1.0"> <groupId>com.mycompany.app</groupId> <artifactId>my-app</artifactId> <versioning> <latest>1.0</latest> <release>1.0</release> <versions> <version>1.0</version> </versions> <lastUpdated>20200731090423</lastUpdated> </versioning> </metadata>
    2. 选项 2:在 CodeCatalyst 控制台Published中将包裹状态更新为。有关如何更新程序包版本的状态的信息,请参阅更新程序包版本的状态

如果您只有包的 JAR 文件,则可以使用将消耗包版本发布到 CodeCatalyst 存储库。mvn如果您无法访问程序包的源代码或 POM,此方法会很有用。有关详细信息,请参阅发布第三方程序包