返回
自动推进:使用GitHub Actions将Jar包发布到Maven中央仓库
后端
2023-11-08 21:01:43
使用 GitHub Actions 实现自动发布 Jar 包到 Maven 中央仓库
简介
在软件开发过程中,发布 Jar 包到 Maven 中央仓库是一项必不可少的任务。传统的发布方式需要通过繁琐的本地命令行操作,容易出错且耗时。本文将介绍如何利用 GitHub Actions 自动化 Jar 包发布流程,让开发者高效便捷地将构建好的 Jar 包分发给其他开发者使用。
准备工作
开始之前,您需要准备好以下内容:
- GitHub 账户和私有仓库
- Maven 中央仓库账户
- 包含构建脚本(例如 Maven 或 Gradle)的 Java 项目
自动化流程
步骤 1:配置 GitHub Actions
在 GitHub 仓库中创建 .github/workflows/main.yml
文件,并添加以下内容:
name: 发布 Jar 包到 Maven 中央仓库
on:
push:
branches:
- master
jobs:
发布:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: 设置 Maven 设置
run: mvn -B --file pom.xml settings:settings -DsettingsFile=./maven-settings.xml
- name: 打包 Jar 包
run: mvn -B package
- name: 发布 Jar 包
run: mvn -B --file pom.xml deploy
步骤 2:配置 Maven 设置
在项目根目录创建 maven-settings.xml
文件,并添加以下内容:
<?xml version="1.0" encoding="UTF-8"?>
<settings>
<servers>
<server>
<id>ossrh</id>
<username>${env.MAVEN_USERNAME}</username>
<password>${env.MAVEN_PASSWORD}</password>
</server>
</servers>
</settings>
步骤 3:配置环境变量
在 GitHub 仓库的“设置”页面中,添加以下环境变量:
MAVEN_USERNAME
:Maven 中央仓库用户名MAVEN_PASSWORD
:Maven 中央仓库密码
步骤 4:运行工作流
在 master
分支上推送代码,触发 GitHub Actions 工作流。工作流将自动打包 Jar 包并发布到 Maven 中央仓库。
常见问题解答
问题 1:工作流没有运行?
- 检查工作流配置和 Maven 设置是否正确。
- 确保已配置环境变量。
问题 2:Jar 包没有发布?
- 检查工作流日志是否有错误信息。
- 检查 Maven 中央仓库网站,查看 Jar 包是否已发布。
问题 3:如何手动触发工作流?
- 在 GitHub 仓库的“操作”选项卡中,单击“运行工作流”。
问题 4:可以自定义工作流吗?
- 是的,可以在
main.yml
文件中自定义工作流的步骤和配置。
问题 5:如何发布 Snapshots 版本?
- 在
pom.xml
文件中将distributionManagement
部分配置为快照版本。
总结
通过利用 GitHub Actions 自动发布 Jar 包到 Maven 中央仓库,开发者可以省时省力,避免错误,并更有效地分发软件组件。希望这篇博客能帮助您顺利完成此过程,让您的软件开发更加高效便捷。