news 2026/4/3 5:06:08

【SpringBoot】从学会使用maven开始

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【SpringBoot】从学会使用maven开始

下面是一份2026 年视角从零开始学会使用 Maven + Spring Boot 项目的最实用、最快上手指南。

目标:1–2 小时内搞懂 Maven 核心概念,并能独立创建/运行一个 Spring Boot 项目。

第一部分:Maven 到底是什么?为什么必须先学它?

Maven 是 Java 生态里最主流的构建工具 + 依赖管理工具(2026 年使用率仍超过 70%)。

它帮你解决三大痛点:

  1. 依赖管理:不用手动下载 jar 包,写个坐标就能自动下载 + 管理版本冲突
  2. 项目构建:一键编译、测试、打包(jar/war)、生成可执行文件
  3. 项目标准化:目录结构、生命周期、插件体系统一,几乎所有公司都用 Maven 结构

对比 Gradle(2026 年新兴趋势):

项目MavenGradle2026 年推荐场景
配置文件pom.xml(XML)build.gradle(Groovy/Kotlin)Maven 更稳,Gradle 更灵活
学习曲线新手首选 Maven
速度中等更快(增量构建、缓存强)中大型项目 Gradle 更香
生态极其丰富很好,但部分老插件不支持公司内部项目 80%+ 仍用 Maven

结论:新手/面试/大多数公司项目 → 先精通 Maven,后面再学 Gradle 很容易迁移。

第二部分:Maven 核心概念(背会这 8 个就入门)

概念解释(最通俗版)记忆口诀 / 示例
POMProject Object Model,项目的“身份证”pom.xml 文件就是整个项目的描述文件
坐标(GAV)groupId + artifactId + version全世界唯一的 jar 身份证(如 com.example:myapp:1.0.0)
依赖(dependency)你要用的 jar 包写在这里标签里写坐标
依赖范围(scope)compile(默认)、test、provided、runtime 等test → 只在测试时用,provided → 容器提供
生命周期validate → compile → test → package → install → deploymvn package = 执行到 package 阶段
插件(plugin)Maven 的“外挂”,实现编译、打包、测试等功能maven-compiler-plugin、spring-boot-maven-plugin
父 POMspring-boot-starter-parent(最常用)帮你统一版本、插件配置
仓库本地仓库 + 私服 + 中央仓库(maven.org)先查本地 → 私服 → 中央

第三部分:快速上手 Maven(零基础 30 分钟)

步骤 1:安装 Maven(2026 年最新推荐)
  • 官网最新稳定版:Maven 3.9.12(2026 年 1 月主流,JDK 8+ 即可运行)
  • Maven 4.0.0-rc-x 系列已出,但尚未正式 GA,生产建议先用 3.9.x

Windows 安装(最简单方式):

  1. 下载:https://maven.apache.org/download.cgi → Binary zip
  2. 解压到任意目录(如 D:\maven)
  3. 配置环境变量:
    • 新建 M2_HOME = D:\maven\apache-maven-3.9.12
    • Path 追加 %M2_HOME%\bin
  4. cmd 输入mvn -v看到版本即成功

国内镜像加速(强烈推荐,下载快 10 倍)
编辑 conf/settings.xml,添加/修改 mirrors:

<mirrors><mirror><id>aliyunmaven</id><mirrorOf>central</mirrorOf><name>aliyun maven</name><url>https://maven.aliyun.com/repository/public</url></mirror></mirrors>
步骤 2:用 IDEA 创建第一个 Maven 项目(推荐方式)
  1. IDEA → File → New → Project
  2. 左侧选Maven→ JDK 选 17 或 21
  3. GroupId:com.example
  4. ArtifactId:my-first-maven
  5. Finish

项目结构自动生成:

my-first-maven ├── pom.xml └── src ├── main │ ├── java │ └── resources └── test └── java
步骤 3:写一个最简单的 pom.xml(Spring Boot 风格)
<?xml version="1.0" encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.example</groupId><artifactId>my-first-springboot</artifactId><version>0.0.1-SNAPSHOT</version><name>my-first-springboot</name><!-- Spring Boot 父 pom(最重要!) --><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.3.5</version><!-- 或 3.4.x 最新稳定版 --><relativePath/><!-- lookup parent from repository --></parent><properties><java.version>21</java.version></properties><dependencies><!-- Web 启动器(包含 Tomcat + Spring MVC) --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- 测试 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><build><plugins><!-- Spring Boot 可执行 jar 插件 --><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>
步骤 4:写第一个 Hello World Controller

src/main/java/com/example/demo/HelloController.java

packagecom.example.demo;importorg.springframework.web.bind.annotation.GetMapping;importorg.springframework.web.bind.annotation.RestController;@RestControllerpublicclassHelloController{@GetMapping("/hello")publicStringhello(){return"Hello Maven + Spring Boot! (2026)";}}
步骤 5:常用 Maven 命令(背会这 7 个)
命令作用快捷键(IDEA)
mvn clean删除 target 目录Maven → clean
mvn compile编译 main 代码Maven → compile
mvn test运行单元测试Maven → test
mvn package打包(生成 jar/war)Maven → package
mvn install打包 + 安装到本地仓库Maven → install
mvn spring-boot:run直接运行 Spring Boot 项目绿色三角 或 run
mvn dependency:tree查看依赖树(排查冲突神器)Maven → dependency:tree

第四部分:新手最容易踩的 8 个坑 & 解决

  1. 依赖下载失败→ 检查网络 + 镜像 + settings.xml
  2. 版本冲突→ mvn dependency:tree 看树 → exclusion 排除
  3. JDK 版本不匹配→ pom 指定 java.version + IDEA Project SDK
  4. 编码问题→ pom 加 properties → project.build.sourceEncoding → UTF-8
  5. spring-boot-maven-plugin 没加→ 打包后 java -jar 报错
  6. 本地仓库被污染→ mvn dependency:purge-local-repository
  7. 阿里云镜像偶尔 404→ 换华为/腾讯镜像
  8. IDEA Maven 索引卡死→ File → Invalidate Caches → 重启

一句话总结(2026 最实用版):

先用 IDEA + Spring Initializr 创建带 spring-boot-starter-parent 的 Maven 项目 → 加 spring-boot-starter-web → 写 Controller → mvn spring-boot:run → 浏览器 localhost:8080/hello 看到输出 → 你就已经入门 Maven + Spring Boot 了!

接下来想学哪个方向?

  • 依赖管理进阶(scope、exclusion、optional)
  • 多模块项目搭建
  • 集成 MyBatis / JPA
  • 打包成 Docker 镜像

告诉我,我给你针对性下一章~

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/27 2:39:33

Java Web从入门到精通:全面探索与实战

Java Web 从入门到精通&#xff1a;2025–2026 年最实用完整路线&#xff08;从零到能独立负责中大型项目&#xff09; 这是一条真实可执行、时间可控的进阶路径&#xff0c;适合&#xff1a; 零基础 / 只学过 JavaSE 的同学想系统掌握 Java Web 后端全栈开发目标&#xff1a…

作者头像 李华
网站建设 2026/4/2 9:24:21

9 款 AI 写论文哪个好?实测封神:虎贲等考 AI 凭真材实料碾压同级

作为深耕论文写作科普的教育测评博主&#xff0c;每年毕业季都会帮粉丝实测各类 AI 论文工具。本次耗时 1 个月&#xff0c;选取 9 款真实热门的 AI 写论文工具&#xff08;虎贲等考 AI、ChatGPT 4o、DeepSeek Academic、秘塔写作猫、豆包学术版、WPS AI、文心一言学术版、讯飞…

作者头像 李华
网站建设 2026/3/22 3:45:49

verl数据格式转换:parquet适配实战

verl数据格式转换&#xff1a;parquet适配实战 1. 背景与问题引入 在使用 verl 框架进行大型语言模型的强化学习训练时&#xff0c;数据准备是关键的第一步。很多用户在实际操作中会遇到一个常见问题&#xff1a;原始数据为 Arrow 格式&#xff0c;但 verl 的默认数据加载机制…

作者头像 李华
网站建设 2026/3/17 13:48:59

通义千问3-14B实战案例:128k长文本处理完整指南

通义千问3-14B实战案例&#xff1a;128k长文本处理完整指南 1. 引言&#xff1a;为什么你需要关注 Qwen3-14B&#xff1f; 你有没有遇到过这样的场景&#xff1a;手头有一份几十页的PDF合同、一篇上万字的技术白皮书&#xff0c;或者一整本电子书需要快速理解&#xff1f;传统…

作者头像 李华
网站建设 2026/3/5 21:17:54

无需安装客户端,实现全网络无缝互联!节点小宝网关模式正式上线!

目录告别繁琐配置&#xff1a;节点小宝网关模式实现全屋设备无缝互联网关模式组网示意告别繁琐配置&#xff1a;节点小宝网关模式实现全屋设备无缝互联 节点小宝推出了全新的网关模式&#xff0c;为异地组网提供了一种更高效的解决方案。用户只需将安装有节点小宝客户端的设备…

作者头像 李华
网站建设 2026/3/31 14:25:46

【大数据毕设源码分享】django基于hadoop的外卖配送分析及可视化系统(程序+文档+代码讲解+一条龙定制)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华