maven使用详解

2025-12-18 15:16:53

1、Maven基本命令

-v:查询Maven版本 

本命令用于检查maven是否安装成功。 

Maven安装完成之后,在命令行输入mvn -v,若出现maven信息,则说明安装成功。

compile:编译 

将java源文件编译成class文件

test:测试项目 

执行test目录下的测试用例

package:打包 

将项目打成jar包

clean:删除target文件夹

install:安装 

将当前项目放到Maven的本地仓库中。供其他项目使用

maven使用详解

2、Maven仓库用来存放Maven管理的所有Jar包。分为:本地仓库 和 中央仓库。

本地仓库 

Maven本地的Jar包仓库。

中央仓库 

Maven官方提供的远程仓库。

当项目编译时,Maven首先从本地仓库中寻找项目所需的Jar包,若本地仓库没有,再到Maven的中央仓库下载所需Jar包。

maven使用详解

3、在Maven中,坐标是Jar包的唯一标识,Maven通过坐标在仓库中找到项目所需的Jar包。 

如下代码中,groupId和artifactId构成了一个Jar包的坐标。

<dependency>

    <groupId>ch.qos.logback</groupId>

    <artifactId>logback-classic</artifactId>

    <version>1.1.1</version>

</dependency>

groupId:所需Jar包的项目名

artifactId:所需Jar包的模块名

version:所需Jar包的版本号

maven使用详解

4、传递依赖:如果我们的项目引用了一个Jar包,而该Jar包又引用了其他Jar包,那么在默认情况下项目编译时,Maven会把直接引用和简洁引用的Jar包都下载到本地。

排除依赖:如果我们只想下载直接引用的Jar包,那么需要在pom.xml中做如下配置:(将需要排除的Jar包的坐标写在中)

<exclusions>

    <exclusion>

        <groupId>ch.qos.logback</groupId>

        <artifactId>logback-classic</artifactId>

    </exclusion>

</exclusions>

maven使用详解

5、若项目中多个Jar同时引用了相同的Jar时,会产生依赖冲突,但Maven采用了两种避免冲突的策略,因此在Maven中是不存在依赖冲突的。

短路优先

本项目——>A.jar——>B.jar——>X.jar

本项目——>C.jar——>X.jar

若本项目引用了A.jar,A.jar又引用了B.jar,B.jar又引用了X.jar,并且C.jar也引用了X.jar。 

在此时,Maven只会引用引用路径最短的Jar。

声明优先 

若引用路径长度相同时,在pom.xml中谁先被声明,就使用谁。

maven使用详解

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢