Appearance
依赖管理
Java 项目不仅需要写业务代码,还需要稳定地处理依赖下载、版本统一、编译测试、打包发布和多模块协作。依赖管理工具负责把这些工程动作从手工命令变成可重复的项目模型,让本地开发、团队协作和 CI 构建使用同一套规则。
本专题从两个主流工具展开:Maven 适合约定清晰、模型稳定的 Java 后端工程;Gradle 适合构建逻辑更复杂、需要更强脚本表达能力和增量构建能力的项目。
阅读路径
| 页面 | 解决的问题 | 适合场景 |
|---|---|---|
| Maven | 从项目模型、仓库、生命周期、插件、多模块到排错闭环理解 Maven | Java 后端服务、公共 SDK、Spring Boot 应用、企业多模块工程 |
| Gradle | 理解 Gradle 的任务模型、Wrapper、缓存、DSL 和多项目构建 | Android、大型多项目、需要高度定制构建逻辑的工程 |
初学 Java 后端项目时,建议先阅读 Maven。它的约定更固定,能帮助建立“项目坐标、依赖树、生命周期、构件仓库”的基础模型。理解 Maven 后再看 Gradle,会更容易分清两者差异:Maven 更强调声明式项目模型,Gradle 更强调任务图和脚本化构建。
视频学习入口
| 系列 | 链接 | 建议搭配 |
|---|---|---|
| Maven 深入教程 | B站视频 | 先看视频建立 POM、生命周期、依赖治理和发布部署的完整链路,再回到 Maven 查命令和配置 |
| Gradle 深入教程 | B站视频 | 先按视频理解构建模型、任务图、插件扩展、依赖变体和缓存,再回到 Gradle 查脚本示例 |
关注边界
依赖管理工具主要解决构建期问题,不直接解决运行期配置、服务治理或部署编排。数据库地址、运行环境变量、容器资源限制、灰度发布策略等内容,应交给应用配置、容器平台或发布系统处理。
判断一个依赖管理问题是否需要回到 Maven 或 Gradle,通常看它是否发生在这些环节:
- 依赖无法下载、版本冲突、运行时类缺失。
- 编译、测试、打包、发布命令行为不符合预期。
- 多模块项目构建顺序错误或本地联调失败。
- 私服账号、镜像、SNAPSHOT、正式版本发布流程混乱。
- 插件版本、JDK 版本或 CI 构建环境不一致。
这些问题应优先从项目模型、依赖树、生命周期日志和有效配置中定位,而不是反复手工复制 jar 包或删除整个本地仓库。
