如果说我们现在手头有非常多的jar包,然后有好多好多的项目。我们之前是采用cv大法将我们的jar包复制到每一个项目中。
但是这样cv非常地麻烦,并且同一份jar包要被拷贝好几次,这就会导致我们的项目特别臃肿。这个时候我们就可以使用Maven进行统一管理。Maven是相当于是一个仓库,将我们所有的jar包都置于其中。当我们的项目需要用到Maven中的某一个jar包的时候,我们将就可以通过依赖的形式调用这个jar包。(不是把jar包直接复制过去)
构建过程的几个主要环节
①清理:删除以前的编译结果,为重新编译做好准备。
②编译:将 Java 源程序编译为字节码文件。
③测试:针对项目中的关键点进行测试,确保项目在迭代开发过程中关键点的正确性。
④报告:在每一次测试后以标准的格式记录和展示测试结果。
⑤打包:将一个包含诸多文件的工程封装为一个压缩文件用于安装或部署。 Java 工程对应 jar 包, Web工程对应 war 包。
⑥安装:在 Maven 环境下特指将打包的结果——jar 包或 war 包安装到本地仓库中。
⑦部署:将打包的结果部署到远程仓库或将 war 包部署到服务器上运行。
maven和我们Linux下的make/makefile项目自动化构建工具是比较相似的。
如果Mac安装过homebrew也就是包管理工具之后,直接在终端中输入下面代码即可安装
brew install maven
安装好之后使用下面的代码查看我们的Maven的安装路径
brew list maven
然后在这个路径下有我们的Maven的配置文件
/usr/local/Cellar/maven/3.8.5/libexec/conf/

前往这个文件夹

前往文件夹之后,这个就是我们Maven的配置文件

这里我们使用文本编辑工具打开这个settings
找到大约55行的位置,这个用localRepository标签括起来的路径就是我们本地仓库的路径。因为我们的Maven会首先从服务器端将我们的包文件拷贝到本地的仓库,然后当项目中需要用到这个包的时候就可以先从本地仓库中去调用(可以实现离线的功能)。 我们将这句话拷贝到注释的外面,然后再中间填写上我们想要让它保存的本地仓库的路径。

配置阿里云镜像
-
- <mirror>
- <id>nexus-aliyunid>
- <mirrorOf>*mirrorOf>
- <name>Nexus aliyunname>
- <url>http://maven.aliyun.com/nexus/content/groups/publicurl>
- mirror>
将上面这段代码放到我们之前的配置文件中
标签中,这样之后Maven去下载的话会优先去阿里云下载,就比去中央仓库快很多。

再配置我们的jdk
- <profile>
- <id>jdk-1.8id>
- <activation>
- <activeByDefault>trueactiveByDefault>
- <jdk>1.8jdk>
- activation>
- <properties>
- <maven.compiler.source>1.8maven.compiler.source>
- <maven.compiler.target>1.8maven.compiler.target>
- <maven.compiler.compilerVersion>1.8maven.compiler.compilerVersion>
- properties>
- profile>
将这段代码放到我们profile的两个标签之间

配置完成之后打开idea,然后在左上角点击preferences

然后打开到这个界面,选择我们刚刚配置好的Maven,idea会自动识别出来的。

然后下面两个分别填写刚刚配置的XML文件的路径和我们创建的本地仓库的位置

然后点击右下角的apply,再点击OK
创建一个Maven
idea中的project是一个工程,一个工程中可以创建很多模块
首先创建一个空项目

file->new->module

配置成下面这个样子

然后点击create创建,就会出现下面的样子




这里我们发现我们的Junit包没有导入




然而我们现在运行的时候出问题了,这可能是我们的包的版本不对,我们重新修改一 下




然后我们可以从我们之前配置文件中指定的目录下找到我们的maven所存的本地库,这些全部都是刚刚下载的库,我们刚刚的Maven项目就是依赖这个本地仓库,而并不是将这些jar包拷贝到idea的当前工作目录下的。
