Bootstrap

Maven

一、IDEA 中查看maven项目中所有jar包的依赖关系图

Intellij IDEA 中如何查看maven项目中所有jar包的依赖关系图_如何查看jar包依赖-CSDN博客

ctrl+f 搜索

依赖包冲突:

红色实线表示冲突,冲突的jar包右击-exclud,则会自动在pom中给exclud排除掉

二、maven打包war包

maven整合ssm打包war包部署到tomcat

先clean,然后install

最终打包生成的war包:

xxx\target\ROOT.war

三、maven仓库

本地仓库 和远程仓库(中央仓库、私服、其他公共库)

1.私服:当Maven需要下载构建的使用,它先从私服请求,如果私服上没有的话,则从外部的远程仓库下载,然后缓存在私服上,再为Maven的下载请求提供服务

2.当用户输入第一条Maven命令后,Maven才会创建本地仓库,然后根据pom配置从远程仓库下载依赖构建到本地仓库,当Maven执行编译或测试时,如果需要使用到依赖文件,它总是基于坐标使用本地仓库的依赖文件,如下图

3.使用maven是为了更好的帮项目管理包依赖,maven的核心就是pom.xml配置文件

当我们需要引入一个jar包时,在pom文件中加上依赖坐标就可以从仓库中依赖到相应的jar包

<dependency>
      <groupId>com.xxx.xxx</groupId>
      <artifactId>xxx</artifactId>
</dependency>

4.本地仓库目录:C:\Users\ADMIN\.m2\repository

这是默认的,可以自定义位置,如图

四、常遇问题以及对应的解决方法

1.jar包冲突

报错:the method's class,xxx, is available form the following loacations

2.引入私服上没有的外部jar包

3.查看项目是否引入某个jar包

图中方法3:或者直接代码中指定引入该包哪个版本的

比如log4j漏洞修复,直接在根pom.xml中加入:

<dependency>
   <groupId>org.apache.logging.log4j</groupId>
   <artifactId>log4j-api</artifactId>
   <version>2.17.2</version>
</dependency>
<dependency>
   <groupId>org.apache.logging.log4j</groupId>
   <artifactId>log4j-to-slf4j</artifactId>
   <version>2.17.2</version>
</dependency>

补充:

如果根pom中加入,还是存在旧版本,则查找具体是用在哪个pom下,对应pom中加入

;