当前位置:Java -> Java库开发
'java-library-template
' 是Java库开发者的全面解决方案,简化了库创建和维护的方方面面。
本博客文章探讨了该模板的一系列功能,包括一键项目设置、自动化发布、安全扫描和轻松的Javadoc生成。了解如何使用Renovate保持依赖项更新,并确保无缝发布到Maven Central。
无论您是资深开发人员还是新手Java开发者,该模板都能让您高效自信地创建高质量的库。
java-library-template
'在'60s如果您更喜欢观看视频而不是阅读本文,则可以在@thriving_dev YouTube频道上找到'60秒介绍'。
使用模板创建您自己的存储库,并按照README.md中的说明进行操作。
该模板的核心是“主GitHub Actions CI/CD流水线”。“在Actions中查看。
该工作流包含多个作业,通过依赖项和条件进行建模和链接。根据上下文(触发器,参考,输入参数),它满足不同的用例:
项目模板由三个顶层文件夹组成:
.github/
:定义GitHub Actions CI任务和新的拉取请求、问题等模板。gradle/
:包含Gradle配置文件,例如Gradle版本目录和Gradle Wrapper。java-library-template/
:库源代码(Gradle子项目)。此外,以下文件值得关注:
gradle/libs.versions.toml
:声明版本目录的规范文件。settings.gradle.kts
:多项目Gradle设置文件。这里定义了所有子项目。gradle.properties
:由CI/CD流水线发布过程维护所需的库版本。**/build.gradle.kts
:Gradle构建文件Maven发布过程是完全自动化的,不需要手动操作。
要通过CI/CD流水线发布新版本,请按照以下说明操作。
发布流程包括
新版本会自动发布到Maven Central!
库的gradle依赖项会通过 CVE 使用 Trivy 进行扫描。扫描结果可以在“安全性 > 漏洞警报 > 代码扫描”下进行查看和管理。
ℹ Trivy 是一个开源的漏洞扫描工具,能够快速识别容器镜像和应用程序中的安全漏洞,是增强容器化环境安全性的宝贵工具。
触发扫描的方式包括:
请参考GitHub官方文档以了解更多细节。
此外,代码库经过 GitHub CodeQL 进行分析。请参考 官方文档 以了解更多关于 CodeQL 的信息。
通过 gradle 生成的 Javadoc 网站,由 CI/CD 流水线 '发布' 到 GitHub Pages。除了每个发布版本外,还会发布当前快照版本(main 分支)作为 current
。
-> 实时预览
启用 renovate 的推荐方式是使用 Renovate GitHub App。这个模板已经预先配置了 renovate.json。
ℹ Renovate(RenovateBot)是一个开源工具,通过扫描代码库,识别过时的依赖项,并生成自动拉取/合并请求来自动更新软件依赖项。
推荐阅读: 程序员如何成为”时间管理大师“
本文链接: Java库开发