maven的概述以及在mac安装配置

文章目录

一、为什么使用maven

  • 由于java的生态环境非常的丰富,无论想实现什么样的功能,都能找到相应的工具类,这些工具类都是以jar包的形式出现,例如:Spring、SpringMVC、SpingClood、MyBatis、数据库驱动等等,都是以jar包的形式出现的,jar包之间的关联,在使用一个依赖之前,还需要确定这个依赖的依赖是否其他的依赖,所以项目比较大的时候,依赖管理会变的非常的臃肿,这时候maven就能解决这个问题。

二、maven是什么?

  • 概念
    • 简单的说maven就是一个项目管理工具,包含了一个项目对象模型(Project Object Model),在项目中就是一个xml[pom.xml]文件。
  • maven的两大核心
    • 依赖管理
      • 对jar包的统一管理(maven提供了一个中央仓库,会自动的到中央仓库下载相应的依赖jar包)
    • 项目构建
      • 对项目进行编译、测试、打包、部署、上传到私服等。
  • 下载依赖的流程
    • 如图:

三、mac maven 安装与idea配置

  • 安装

    复制代码
      brew install maven
      # 使用brew命令安装会直接将环境变量也配置了
      # 查看环境变量
      env
      # 删除环境变量
      unset [环境变量名称]
      # 验证maven是否安装成功
      mvn -v 
    • 安装后配置
      • maven安装路径
        • 路径

          • /opt/homebrew/Cellar/maven/3.9.9/libexec
        • 更改settings.xml

          复制代码
           # 设置本地仓库路径
           vim settings.xml
           #找到 localRepository 标签
           <localRepository>仓库路径</localRepository>
           # 设置私服地址
               <mirror>
                    <!--This sends everything else to /public -->
                    <id>nexus</id>
                    <mirrorOf>*</mirrorOf> 
                    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
                  </mirror>
                  <mirror>
                    <!--This is used to direct the public snapshots repo in the 
                        profile below over to a different nexus group -->
                    <id>nexus-public-snapshots</id>
                    <mirrorOf>public-snapshots</mirrorOf> 
                    <url>http://maven.aliyun.com/nexus/content/repositories/snapshots/</url>
                  </mirror> 
              </mirrors>
  • idea配置

    • 点击 maven设置
      • Maven 主路径
        • /opt/homebrew/Cellar/maven/3.9.9/libexec
      • 用户设置文件
        • /opt/homebrew/Cellar/maven/3.9.9/libexec/conf/settings.xml
      • 本地仓库地址
        • 把自己的本地仓库文件夹路径放上即可。
相关推荐
飞鱼&1 小时前
HashMap相关问题详解
java·hashmap
没有bug.的程序员1 小时前
Spring Cloud Alibaba 生态总览
java·开发语言·spring boot·spring cloud·alibaba
快乐非自愿2 小时前
Java垃圾收集器全解:从Serial到G1的进化之旅
java·开发语言·python
树在风中摇曳2 小时前
Java 静态成员与继承封装实战:从报错到彻底吃透核心特性
java·开发语言
键来大师5 小时前
Android15 RK3588 修改默认不锁屏不休眠
android·java·framework·rk3588
合作小小程序员小小店6 小时前
web网页开发,在线%考试管理%系统,基于Idea,vscode,html,css,vue,java,maven,springboot,mysql
java·前端·系统架构·vue·intellij-idea·springboot
多多*7 小时前
maven常用的命令
java·log4j·maven
xie_pin_an7 小时前
MyBatis-Plus 实战:MPJLambdaWrapper 多表联查用法全解析
java·spring boot·spring·mybatis
ᐇ9597 小时前
Java LinkedList集合全面解析:双向链表的艺术与实战
java·开发语言·链表
luyun0202027 小时前
Windows 11操作更丝滑,绝了
java·运维·figma