Apache 软件基金会父 POM

该项目由一个 POM 组成,其中包含可能对使用 Maven 3 构建和发布代码的任何 Apache 项目有用的设置(自版本 17 起不再支持 Maven 2.x)。通过将此项目用作父项目,项目将获得这些设置。

大多数项目都希望覆盖其中的一些设置。

以下是此 POM 中配置的项目列表:

  • 顶级项目属性:
    • 许可证:Apache 许可证,2.0 版。
    • 组织:Apache 软件基金会
    • 网址https ://www.apache.org/ 。你应该覆盖它。
    • repositories:pom 添加 Apache 快照存储库 ( https://repository.apache.org/snapshots )
    • distributionManagement:POM 设置发布到 https://repository.apache.org/service/local/staging/deploy/maven2 的 Apache Nexus 实例和https://repository.apache.org/content/repositories/快照快照。请注意,您可以覆盖 POM 参数(distMgmtSnapshotsNamedistMgmtSnapshotsUrl)以更改快照位置。
    • mailingLists:POM 设置通用 Apache 公告列表。你应该覆盖它。
  • pluginManagement:插件管理部分指定插件列表的版本。有关版本的完整列表,请参阅插件管理报告
    • 编译器插件默认设置为 Java 1.7 和 UTF-8 源代码。
    • jar 插件设置为添加默认规范和实现条目。
    • 资源插件设置为 UTF-8。
    • 发布插件:通过 <arguments> 配置元素设置发布插件,以启用所有执行的apache-release配置文件并禁用 <useReleaseProfiles>。您可以在发布插件的配置中使用一个空的 <arguments/> 元素来删除它。
  • plugins: plugins 部分配置两个执行:

apache-release配置文件

如上所述,此 pom 配置发布插件以启用发布插件的所有执行的apache-release配置文件。

该配置文件包括以下插件:

  • maven-assembly-plugin: org.apache.apache.resources:apache-source-release-assembly-descriptor:1.0.6在依赖中,并配置了执行。该插件被配置为从sourceReleaseAssemblyDescriptor属性中获取一个descriptorRef名称,默认情况下设置为source-release (仅限zip):您可以使用source-release-zip-tar(zip和tar)或source-覆盖该属性释放焦油(仅限焦油)值。
  • maven-deploy-plugin:配置为激活updateReleaseInfo
  • maven-source-plugin:配置为构建和附加源 jar。
  • maven-javadoc-plugin:配置为构建和附加一个 javadoc jar。
  • maven-gpg-plugin:配置为对所有内容进行签名。它希望在${gpg.passphrase}中找到密码,大概在您的settings.xml 中
  • checksum-maven-plugin:配置为根据Apache 发布分发策略的要求为源发布创建校验和文件。

当使用 maven-release-plugin 发布时,这将在target/checkout/target中创建文件,准备好复制到项目的Apache /dist/发布分发目录:

  • ${artifactId}-${version}-source-release.[zip|tar.gz]:源发布存档
  • ${artifactId}-${version}-source-release.[zip|tar.gz].sha512:它们的校验和
  • ${artifactId}-${version}-source-release.[zip|tar.gz].asc:他们的签名

设置配置

您可以查看 Apache 网站Publishing Maven Artifacts中的页面。

您可以在命令行中使用-Papache-release测试您的环境设置。

历史

版本 发布日期
21差异提交 2018-08-21
20差异提交 2018-07-07
19差异提交 2018-01-24
18差异提交 2016-05-18
17差异提交 2015-04-24
16差异提交 2014-11-13
15差异提交 2014-09-24
14差异提交 2014-03-06
13差异提交 2013-01-20
12差异提交 2012-11-01
11差异提交 2012-08-08
10差异提交 2011-08-09
9差异提交 2011-02-15
8差异提交 2010-11-26
7差异提交 2009-12-29