“如何发布 Java 包到 Maven 中央仓库” 讲解了本地将 Java 包发布到 Maven 中央库的全过程。但在开源项目中,一般通过 GitHub 进行代码托管,并在 GitHub 的 Release 中进行发版并写明更新日志,还可能在 README 中添加 Maven 中央库的徽章。这一过程固定又繁琐,本文通过 maven-semantic-release 和 GitHub Actions 进行自动化操作,完成上述的整套流程。
演示仓库位于 https://github.com/seriouszyx/maven-release-example。
GitHub Actions
GitHub 提供了一个 Maven 工作流的模板,在项目根目录创建 .github/workflows/maven-ci.yml 文件,添加工作流的配置文件。
name: Java CI
on:
push:
branches: [master]
pull_request:
branches: [master]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Build with Maven
run: mvn clean test
工作流执行了下面几步。
checkout将存储库的副本下载到运行的服务器上setup-java配置了 JDK11Build with Maven进行构建和测试
为 maven-gpg-plugin 添加 configuration,用于 GPG 非交互式密码输入。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.5</version></

本文介绍如何通过GitHub Actions与maven-semantic-release配合,实现Java项目的自动化发布流程,包括构建、测试、签名、发布到Maven中央仓库,并自动生成GitHub Release和更新日志。
615

被折叠的 条评论
为什么被折叠?



