Maven是什么

Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。
Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长。

它是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。当你使用Maven的时候,你用一个明确定义的项目对象模型来描述你的项目,然后Maven可以应用横切的逻辑,这些逻辑来自一组共享的(或者自定义的)插件。

以上都是官方的一些解释,可能比较官方化,所以我来用通俗易懂的话简单说一下我对Maven的理解。
目前在idea中,可以直接创建Maven项目,Maven可以用来做什么呢?他可以从一个公共库里面下载各种依赖资源。
以前我们下载jar依赖包的时候,都要自己通过各种方式下载依赖,但是有了Maven后,我们相当于有了一个大仓库,直接从仓库里面下载东西,配置文件内只要写上你需要什么依赖,他就会自动帮你下载引入。

Maven的下载与安装

Maven的官方网站下载页面:点击前往Maven官方网站下载页面
这种方式安装的Maven需要自己配置环境变量,不是很推荐,因为不太方便。idea中也集成了Maven,但是不推荐这样直接使用。
推荐通过 HomeBrew 来进行下载,打开cmd或者console控制台

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

HomeBrew 的下载安装过程可能有点慢,但是安装好后,下载其他的程序都很方便了
HomeBrew安装好后,输入brew install maven即可,maven就是你需要安装程序的名字,例如git、java等。
安装好maven之后可以通过mvn -v来查看环境是否配置完毕

Last login: Tue Sep 20 09:56:33 on ttys003
td@UncleHangTD-deMacBook-Air ~ % mvn -v
Apache Maven 3.8.6 (84538c9988a25aec085021c365c560670ad80f63)
Maven home: /usr/local/Cellar/maven/3.8.6/libexec
Java version: 18.0.2.1, vendor: Homebrew, runtime: /usr/local/Cellar/openjdk/18.0.2.1/libexec/openjdk.jdk/Contents/Home
Default locale: zh_CN_#Hans, platform encoding: UTF-8
OS name: "mac os x", version: "12.5", arch: "x86_64", family: "mac"
td@UncleHangTD-deMacBook-Air ~ %

配置文件

Maven成功安装好后(mvn -v也有提示),那么就可以开始配置config文件了,MAC默认安装路径在

/usr/local/Cellar/maven/3.8.6/

根据系统的不同,默认的安装路径的位置也有所变化,百度上基本上都有,可以自行查看。
进入/libexec/conf内,使用文本编辑器打开settings.xml,我们需要将里面的部分内容进行修改,当然也可以直接复制粘贴替换自己的配置文件内容,

<localRepository>/path/to/local/repo</localRepository>

<mirrors>
  <mirror>
    <id>nexus</id>
    <mirrorOf>central</mirrorOf>
    <name>Nexus aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public</url>
  </mirror>
</mirrors>

<profiles>
  <profile>
    <id>jdk-1.8</id>
  
    <activation>
      <activeByDefault>true</activeByDefault>
      <jdk>1.8</jdk>
    </activation>
  
    <properties>
      <maven.compiler.source>1.8</maven.compiler.source>
      <maven.compiler.target>1.8</maven.compiler.target>
      <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
    </properties>
  </profile>
</profiles>

配置文件说明

  1. localRepository指的是本地仓库的位置,那么本地仓库是什么呢?你要通过Maven下载各种依赖jar包,那么这个包他会给你存放在电脑的一个目录上,如果以后还要使用这个jar包,他就不需要从云平台中下载了,直接先搜索你的本地仓库是否有对应所需的依赖jar包,从你的本地直接饮引用,省去了下载的步骤。其实这个步骤设置与否都无所谓,因为在idea的使用中,直接可以override,重新指向一个本地仓库目录,后续会说明maven在idea中的使用。
  2. mirrors指的就是云仓库镜像的链接,Maven安装后,默认配置文件里面提供的是外网的链接,我们需要科学上网才可以稳定连接,阿里云提供了一个国内站点,使用阿里云的仓库可以大大节省下载的时间。
  3. profiles里面需要设定jdk的版本,由于我使用的是1.8版本,也可以把1.8改成其他使用的版本。

Maven在Idea的使用

修改Idea的配置

Maven-Study-1
默认idea中使用的是idea自带的maven,一定要把路径换成我们自己本地的Maven路径,到libexec目录下即可
两个Override的地方,一个是settings路径,一个是repo路径,settings路径选项自己的libexec/conf/settings.xml即可,第二个repo路径,如果不Override重新更改的话,会根据settings里面的设定,指向settings设置的仓库,也可以通过修改,指向其他位置,第二项修改与否都可以。

以上,我们在Idea中Maven需要设置的地方就结束了
如果想每次建立项目都不用修改Maven的话,可以直接在Idea中设置New Project Setup
"File => New Project Setup => Preference for New Projects" 按照之前设置Maven的方式,重新设置一遍即可。设置后,以后建立新项目的时候,就直接变成了已经设置的Maven配置。

创建项目

Maven-Study-2
在Idea中可以直接创建Maven项目,根据使用场景的不同,也可以选择不同的Archetype
Maven-Study-3
pom.xml可以写入配置,引入各种jar包依赖,引入后可能会出现报错的情况,点击右边的maven,然后进行刷新即可(需要确保网络环境正常,记得更改mirror为aliyun镜像节点)。
Maven-Study-4

最后修改:2023 年 01 月 09 日
如果觉得我的文章对你有用,请随意赞赏