从我的 pom.xml 生成 .pom 文件的正确方法是什么?

What's the correct way to generate a .pom file from my pom.xml?

我一直在学习如何将 Java 库发布到 jcenter。 jcenter/bintray 要我上传以下工件:

  1. 二进制文件:{groupId}/{artifactId}-{version}.jar
  2. 来源:{groupId}/{artifactId}-{version}-sources.jar
  3. (可选)Java文档:{groupId}/{artifactId}-{version}-javadoc.jar
  4. POM:{groupId}/{artifactId}-{version}.pom

我可以生成前三个没问题(具有标准 mvn package 的二进制文件和使用 here 描述的插件的源代码和 javadoc)。

目前我只是手动将我的 pom.xml 复制到 {groupId}/{artifactId}-{version}.pom 并且工作正常,但它有味道。我确定必须有一种自动化的 Maven 方式来执行此操作,但我找不到它。有人可以帮忙吗?

您可以将您的 Maven 项目直接上传到 Bintray,只需将一些代码添加到您的 pom.xml,然后 运行 将适当的 mvn命令:

首先向您的 Maven 添加一个分发部分,并指定 URL 从中分发您的项目:

<distributionManagement>
  <repository>
      <id>bintray-repo-maven-example</id>
      <url>https://api.bintray.com/maven/tamarjfrog/maven-repo/maven-example/;publish=1</url>
  </repository>
</distributionManagement>

为了使用 Bintray,您需要在 Maven settings.xml 文件的用户名和密码标签中提供您的 Bintray 用户名和 API 密钥作为上传凭据。 API 密钥可以在编辑您的 Bintray 配置文件页面时找到:

<server>
  <id>bintray-repo-maven-example</id>
  <username>tamarjfrog</username>
  <password>***my-top-secret-api-key***</password>
</server>

您只需 运行 这个简单的命令:

mvn deploy

项目将被构建,上传到您提供的 Bintray 存储库目标 URL,然后发布。有关详细信息,请查看 here.

mvn deploy 应该会自动推送你的 pom