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 分钟前
C++【string篇1遍历方式】:从零开始到熟悉使用string类
java·开发语言·c++
蒂法就是我10 分钟前
有一张表,只有一个字段没有插入主建,能插入成功吗? 隐藏的 rowid除了在这里用到还在哪里用到了?
java
a努力。11 分钟前
字节Java面试被问:系统限流的实现方式
java·开发语言·后端·面试·职场和发展·golang
独自破碎E13 分钟前
Java中的Exception和Error有什么区别?
java·开发语言
小徐Chao努力19 分钟前
【Langchain4j-Java AI开发】08-向量嵌入与向量数据库
java·数据库·人工智能
qq_3771123728 分钟前
从零开始深入理解并发、线程与等待通知机制
java·开发语言
小徐Chao努力29 分钟前
【Langchain4j-Java AI开发】07-RAG 检索增强生成
java·人工智能·python
JoannaJuanCV41 分钟前
自动驾驶—CARLA仿真(30)交通管理器(Traffic Manager)
java·redis·自动驾驶
Knight_AL1 小时前
Spring AOP 中 JoinPoint 使用指南
java·python·spring
jmxwzy2 小时前
点赞系统问题
java·redis·tidb·pulsar