Mac Maven环境搭建安装和配置超详细步骤

 更新时间:2023年10月16日 11:46:51   作者:敲代码的小强  
这篇文章主要给大家介绍了关于Mac Maven环境搭建安装和配置的超详细步骤,Maven是一种常用的Java构建工具,它可以自动化构建、测试和打包Java项目,文中通过图文介绍的非常详细,需要的朋友可以参考下

一、Maven简介

Maven 是 Apache 软件基金会的一个开源项目,是一个优秀的项目构建工具,它用来帮助开发者管理项目中的 jar,以及 jar 之间的依赖关系、完成项目的编译、测试、打包和发布等工作。

二、Mavende优点

1、原来的项目中需要的jar包必须手动“复制”、”粘贴” 到WEB-INF/lib 项目下,而借Maven,可以将jar包仅仅保存在“仓库”中,有需要使用的工程只需要“引用”这个文件,并不需要重复复制到工程中。

2、原来的项目中所需要的jar包都是提前下载好的,而Maven在联网状态下会自动下载所需要的jar包。首先在本地仓库中找,找不到就在网上进行下载。

3、原来的项目中一个jar包所依赖的其他jar包必须手动导进来,而Maven会自动将被依赖的jar包导进来。

4、原来的项目一个项目就是一个工程,而借助Maven可以将一个项目拆分成多个工程。

三、环境搭建&安装 下载maven服务器,

1、maven 官网: https://maven.apache.org

2、点击Download下载版本,如下图:

3、将下载好的文件进行解压。

四、环境的配置

注意点:Mac系统环境变量配置文件支持多个,这里仅以 ~/.bash_profile 为例。JDK 必须是1.7以上。

配置路径文件,在命令行终端输入一下命令:

open ~/.bash_profile

需要将 maven 添加到系统环境变量里:

#maven
export MAVEN_HOME=/maven根路径
export PATH=$MAVEN_HOME/bin:$PATH

让系统环境变量强制生效,在命令行终端输入一下命令:

source ~/.bash_profile

差看maven 是否配置生效,在命令行终端输入一下命令:

mvn -version

五、配置maven本地仓库

需要在 maven 文件中找到 conf 文件夹下的 settings.xml 文件进行修改,如下图:

为了提高下载速度需要配置阿里云仓库,如下图:

    <!-- 配置阿里云镜像仓库 -->
    <mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>
    </mirror>

在idea中配置maven,如下图:

六、maven工程的创建

创建一个新的工程new Project,如下图:

创建好的工程,如下图:

七、maven工程pom.xml配置

进入maven 仓库官网,如下图:

搜索自己想要的jar包,如下图:

进入到jar详情

进入jar版本详情:

在 Pom.xml 文件配置 jar 包信息(坐标),使用 maven 自动下载 jar 包到本地仓库中,如下图:

下载好的jar,如下图:

八、Maven 坐标

Maven 坐标一套规则,它规定:世界上任何一个构件都可以使用 Maven 坐标并作为其唯一标识,Maven 坐标包括 groupId、artifactId、version、packaging 等元素,只要用户提供了正确的坐标元素,Maven 就能找到对应的构件。

任何一个构件都必须明确定义自己的坐标,这是 Maven 的强制要求,任何构件都不能例外。我们在开发 Maven 项目时,也需要为其定义合适的坐标,只有定义了坐标,其他项目才能引用该项目生成的构件。

Maven 坐标主要由以下元素组成:

  • groupId: 项目组 ID,定义当前 Maven 项目隶属的组织或公司,通常是唯一的。它的取值一般是项目所属公司或组织的网址或 URL 的反写,例如 con.xiaoqiang.www。
  • artifactId: 项目 ID,通常是项目的名称。
  • version:版本。
  • packaging:项目的打包方式,默认值为 jar。

以上 4 个元素中 groupId、artifactId 和 version 是必须定义的,packaging 是可选的。

九、Maven 仓库

Maven 仓库可以分为 2 个大类:

  • 本地仓库
  • 远程仓库

当 Maven 根据坐标寻找构件时,它会首先查看本地仓库,若本地仓库存在此构件,则直接使用;若本地仓库不存在此构件,Maven 就会去远程仓库查找,若发现所需的构件后,则下载到本地仓库使用。如果本地仓库和远程仓库都没有所需的构件,则 Maven 就会报错。

十、Maven POM

POM(Project Object Model,项目对象模型)是 Maven 的基本组件,它是以 xml 文件的形式存放在项目的根目录下,名称为 pom.xml。

POM 中定义了项目的基本信息,用于描述项目如何构建、声明项目依赖等等。

当 Maven 执行一个任务时,它会先查找当前项目的 POM 文件,读取所需的配置信息,然后执行任务。在 POM 中可以设置如下配置:

  • 项目依赖
  • 插件
  • 目标
  • 构建时的配置文件
  • 版本
  • 开发者
  • 邮件列表

在创建 POM 之前,首先要确定工程组(groupId),及其名称(artifactId)和版本,在仓库中这些属性是项目的唯一标识。一旦在 pom.xml 文件中配置了所依赖的 jar,Maven 会自动从构件仓库中下载相应的构件。

总结

到此这篇关于Mac Maven环境搭建安装和配置超详细步骤的文章就介绍到这了,更多相关Mac Maven环境搭建安装配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • CMD运行Intellij Idea编译后的class文件操作

    CMD运行Intellij Idea编译后的class文件操作

    这篇文章主要介绍了CMD运行Intellij Idea编译后的class文件操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • SpringBoot日志注解与缓存优化详解

    SpringBoot日志注解与缓存优化详解

    这篇文章主要给大家介绍了关于SpringBoot日志注解与缓存优化的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2021-10-10
  • Java中的CopyOnWriteArrayList详解

    Java中的CopyOnWriteArrayList详解

    这篇文章主要介绍了Java中的CopyOnWriteArrayList详解,ArrayList单线程下是安全的 但是多线程下存在不安全的问题,多线程下是不安全的,需要的朋友可以参考下
    2023-12-12
  • java编程 中流对象选取规律详解

    java编程 中流对象选取规律详解

    下面小编就为大家带来一篇java编程 中流对象选取规律详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • 关于SpringCloud灰度发布的实现

    关于SpringCloud灰度发布的实现

    这篇文章主要介绍了关于SpringCloud灰度发布的实现,灰度发布又称金丝雀发布,是在系统升级的时候能够平滑过渡的一种发布方式,灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度,需要的朋友可以参考下
    2023-08-08
  • SpringBoot中的@ControllerAdvice使用方法详细解析

    SpringBoot中的@ControllerAdvice使用方法详细解析

    这篇文章主要介绍了SpringBoot中的@ControllerAdvice使用方法详细解析, 加了@ControllerAdvice的类为那些声明了@ExceptionHandler、@InitBinder或@ModelAttribute注解修饰的 方法的类而提供的专业化的@Component,以供多个 Controller类所共享,需要的朋友可以参考下
    2024-01-01
  • Java编程中使用XFire框架调用WebService程序接口

    Java编程中使用XFire框架调用WebService程序接口

    这篇文章主要介绍了Java编程中使用XFire调用WebService程序接口的方法,WebService是一种跨编程语言和跨操作系统平台的远程调用技术,需要的朋友可以参考下
    2015-12-12
  • 利用Spring插件实现策略模式的案例详解

    利用Spring插件实现策略模式的案例详解

    Spring插件提供了一种更实用的插件开发方法,它提供了插件实现扩展核心系统功能的核心灵活性,但当然不提供核心OSGi功能,如动态类加载或运行时安装和部署插件,本文就来聊下如何使用spring插件来实现策略模式,需要的朋友可以参考下
    2023-05-05
  • Java8通过Function获取字段名的方法(获取实体类的字段名称)

    Java8通过Function获取字段名的方法(获取实体类的字段名称)

    Java8通过Function获取字段名。不用再硬编码,效果类似于mybatis-plus的LambdaQueryWrapper,对Java8通过Function获取字段名相关知识感兴趣的朋友一起看看吧
    2021-09-09
  • 面向对象编程依赖注入详解

    面向对象编程依赖注入详解

    本文主要介绍面向对象编程依赖注入的知识资料,这里对依赖注入的资料做了详细介绍,有兴趣的小伙伴可以参考下
    2016-08-08

最新评论