基于idea的maven(一)Maven的安装

1.Maven前置依赖

检查电脑是是否安装java

2.下载maven

网址 www.apache.org

 解压 maven 压缩包,

并创建相应的maven本地仓库的路径。

打开 conf文件夹中 修改 settings.xml 文件 

2.配置环境变量

maven已经完成了安装,我们可以通过DOS命令检查一下我们是否安装成功: mvn -v

 

3. settings.xml 的修改和研究

setting.xml的配置文件分类(更改配置的本地仓库)

(1)直接修改Maven中conf文件夹中的setting.xml文件

注:此时更改后,所有的用户都会受到影响,而且如果maven进行升级,那么所有的配置都会被清除,所以要提前复制和备份/conf/settings.xml文件

(2)在.m2文件夹下建立一个setting·xml文件

(3).(多说一下)项目里的pom.xml

有个优先级的,应该是pom>用户级别>全局级别
例:如果pom中不配置,就取用户级别,如果用户级别也没有配置,就取全局级别

故:一般情况下不推荐配置全局的settings.xml

第一点:镜像的配置

setting.xml里面有个mirrors节点,用来配置镜像URL。mirrors可以配置多个mirror,每个mirror有id,name,url,mirrorOf属性。

  • id是唯一标识一个mirror
  • name貌似没多大用,相当于描述
  • url是官方的库地址
  • mirrorOf代表了一个镜像的替代位置,例如central就表示代替官方的中央库。

mirror也不是按settings.xml中写的那样的顺序来查询的。所谓的第一个并不一定是最上面的那个。

当有id为B,A,C的顺序的mirror在mirrors节点中,maven会根据字母排序来指定第一个,所以不管怎么排列,一定会找到A这个mirror来进行查找,当A无法连接,出现意外的情况下,才会去B查询。

在setting·xml中添加如下代码:

    <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>

第二点:指定本地路径和修改

这是直接修改的maven中conf中的setting.xml文件,此时配置的maven的本地仓库是属于用户范围的。

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
   <localRepository>E:/Program/apache-maven-3.3.9/repository</localRepository>
    -->
    <localRepository>D:/repository</localRepository>

4. idea 安装maven插件

(1)安装maven插件

 (2)对maven的maven插件进行相关配置

4.详解pom

Maven在某个统一的位置存储所有项目的共享的构件,这个统一的位置,我们就称之为仓库。(仓库就是存放依赖和插件的地方)

任何的构件都有唯一的坐标,Maven根据这个坐标定义了构件在仓库中的唯一存储路径,

pom里面的仓库与setting.xml里的仓库功能是一样的。主要的区别在于:pom里的仓库是个性化的。

  比如一家大公司里的setting文件是公用的,所有项目都用一个setting文件,但各个子项目却会引用不同的第三方库,所以就需要在pom里设置自己需要的仓库地址。

解读Maven在仓库中的存储路径:

  1. 基于groupId准备路径,将句点分隔符转成路径分隔符,就是将  "."  转换成 "/" ; example: org.testng --->org/testng
  2. 基于artifactId准备路径,将artifactId连接到后面:org/testng/testng
  3. 使用version准备路径,将version连接到后面:org/testng/testng/5.8
  4. 将artifactId于version以分隔符连字号连接到后面:org/testng/testng/5.8/tesng-5.8
  5. 判断如果构件有classifier,就要在 第4项 后增加 分隔符连字号 再加上 classifier,org/testng/testng/5.8/tesng-5.8-jdk5
  6. 检查构件的extension,如果extension存在,则加上句点分隔符和extension,而extension是由packing决定的,org/testng/testng/5.8/tesng-5.8-jdk5.jar

 有两种pom文件。第一个是项目级别的pom,第二种是模块级别的pom 

项目级别的pom:

原文地址:https://www.cnblogs.com/wqbin/p/11288259.html