IDEA集成Maven

一、创建Maven项目

1、配置Maven环境(全局)

2、创建项目

3、配置jdk版本

4、创建Maven项目

  1. 创建模块

  2. 创建test下面的resources

完整的Maven目录:

  1. 创建类

二、Maven坐标

  • 什么是坐标?

    • Maven 中的坐标是资源(jar)的唯一标识,通过该坐标可以唯一定位资源位置。
    • 使用坐标来定义项目或引入项目中需要的依赖。
  • Maven 坐标主要组成

    • groupId: 定义当前Maven项目隶属组织名称(通常是域名反写,例如:org.example)
    • artifactId: 定义当前Maven项目名称(通常是模块名称,例如 order-service、goods-service)
    • version: 定义当前项目版本号
      1. SNAPSHOT:功能不稳定、尚处于开发中的版本,即快照版本
      2. RELEASE:功能趋于稳定、当前更新停止,可以用于发行的版本(如果是具体版本号,不带RELEASE其实也是RELEASE)

三、导入Maven项目

  • 方式一:File -> Project Structure -> Modules -> Import Module -> 选择 maven 项目的 pom.xml
  • 方式二:Maven 面板 -> +(Add Maven Projects) -> 选择 maven 项目的 pom.xml

导入 Maven 项目:

建议将要导入的 maven 项目复制到你的项目目录下

建议选择 maven 项目的 pom.xml 文件进行导入

四、依赖配置

  • 依赖:指当前项目运行所需要的jar包,一个项目中可以引入多个依赖。
  • 配置:
    1. 在 pom.xml 中编写 <dependencies> 标签
    2. 在 <dependencies> 标签中 使用 <dependency> 引入坐标
    3. 定义坐标的 groupId, artifactId, version
    4. 点击刷新按钮,引入最新加入的坐标

访问:https://mvnrepository.com/ 找到对应的依赖

例如查找:spring-context

复制粘贴到pom.xml中,并点击右上角刷新(下载)

下载完成如图

可以看到上面下载了很多对应的依赖,这种情况就叫:依赖传递

五、排除依赖

排除依赖:指主动断开依赖的资源,被排除的资源无需指定版本。

使用<exclusions> </exclusions>

xml 复制代码
<!--  配置依赖  -->
<dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>6.1.4</version>

        <!-- 排除依赖 -->
        <exclusions>
            <exclusion>
                <groupId>io.micrometer</groupId>
                <artifactId>micrometer-observation</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
</dependencies>

注意事项:

  • 一旦依赖配置变更了,记得重新加载
  • 引入的依赖本地仓库不存在,记得联网

六、Maven生命周期

Maven的生命周期就是为了对所有的maven项目构建过程进行抽象和统一。

Maven中有3套相互独立的生命周期:

  • clean:清理工作。
  • default:核心工作,如:编译、测试、打包、安装、部署等。
  • site:生成报告、发布站点等。

生命周期阶段

  • clean:移除上一次构建生成的文件
  • compile:编译项目源代码
  • test:使用合适的单元测试框架运行测试(junit)
  • package:将编译后的文件打包,如:jar、war等
  • install :安装项目到本地仓库

注意:在同一套生命周期中,当运行后面的阶段时,前面的阶段都会运行。

执行指定生命周期的两种方式:

  • 在idea中,右侧的maven工具栏,选中对应的生命周期,双击执行。
  • 在命令行中,通过命令执行。
相关推荐
Wang's Blog4 分钟前
Java 项目实战: 交友项目 - 技术架构与选型剖析
java·架构·交友
我是大猴子5 分钟前
一些八股和限流措施
java
认真的小羽❅14 分钟前
ThreadLocal 在虚拟线程间要小心
java·开发语言·jvm
美味蛋炒饭.20 分钟前
Java八股面试(4)
java·开发语言·面试
SL_staff22 分钟前
OKR落地难?技术团队如何用五层联动链打通执行断层
java·开源·全栈
省钱兄--zs22 分钟前
无人自助拼豆系统架构设计与功能实现落地部署全流程实战指南
java·数据仓库·spring boot·系统架构·需求分析
Raas10023 分钟前
AI网关能做调用审计吗?MAI Gateway(魔芋企业级AI网关)实战能力深度解读
java·服务器·网络·数据库·gateway·prompt·企业级产品
海绵宝宝转agent28 分钟前
2026-10-14算法+面经总结
java·笔记·算法·缓存
Java爱好狂.29 分钟前
挑战一周速通Spring+SpringBoot+SpringCloud!
java·后端·spring·springboot·架构师·java面试·java程序员
小师兄吃牛肉42 分钟前
SQL 编辑器异常排查:基于 KStudio 的一次实战记录
java·sql·编辑器