springboot前置知识:maven jar包自动化管理工具
1.maven作用
一个自动化管理jar包的工具
作用:
a.管理第三方jar包 不需要我们自己去下载,它自动搞定。
依赖关系jar包也是自动管理
b.将项目 目标拆分成多个模块
项目开发有很多层,maven可以将每层的项目组装成一个大项目。
2.maven概念:
是一个基于java平台的,自动化构建的工具 ,意味着需要jdk。
功能:
清理 : 清理编译的文件。编译文件在target目录里 命令: mvn clean
编译: java—>class 命令: mvn compile
测试: 针对于项目中的关键点进行测试,亦可以用测试代码去测试开发代码 命令:mvn test
报告: 将测试结果显示出来
打包: 将项目中的多个文件压缩成一个文件 命令:mvn package
安装 : 将打成的包安装到本地仓库 mvn install
部署:将打成的包放到服务器上。 mvn deploy
仓库分为几种:本地仓库,远程仓库(中央仓库,镜像仓库) 镜像仓库是为了分流中央仓库的压力
本地仓库不存在你要的jar包才会到中央仓库下载
安装的意思: 有个大项目分为两个项目A,B项目。比如B项目的开发依赖于A项目,所以就可以将A项目打包安装到本地仓库,在B项目中的pop.xml文件中添加依赖,B项目就可以使用A包了。
部署项目:我们在eclipise中生成的项目,直接复制到tormat上是不可以直接运行的,
两者目录结构不同。需要严格遵守tormat的目录结构。解决办法可以是将项目打包成一个war包。
然后直接放到tormat的wtwebapps目录里就可以了。
3.下载配置maven
官网上下载,解压缩,在里面创建一个目录repository 作为本地仓库,装一些jar包
然后配置环境变量。
4.maven项目的目录结构
—src 源码
----java java源码
----resources 一些配置文件,资源文件
----test 测试代码
-----java 一些测试代码
-----resources
pom.xml文件是添加依赖的文件
//dependency依赖,在里面添加依赖jar包
<dependency>
<groupId>域名反转.大项目名</groupId>
<groupId>org.lanqiao.maven<groupId>
<artifactId>子模块名</artifactId>
<artifactId>HelloWorld<artifactId>
<version>版本号</version>
<version>2.1.6.RELEASE</version>
</dependency>
创建完项目之后,使用idea配置maven
1.给项目配置maven的本地仓库
这里是maven jar包的本地仓库。
(可以到idea设置里面给以后所有新项目设置maven jar包本地产仓库。)
[外链图片转存失败,源站可能有防盗]!链机制,建(htps://img04.sogoucdn.com/app/a/100520146/c4f7eb8e54d0f59c0212e6efe849ccc5)]
2.以后需要添加jar包直接再pom.xml里面配置
//dependency依赖,在里面添加依赖jar包
<groupId>域名反转.大项目名</groupId>
<groupId>org.lanqiao.maven<groupId>
<artifactId>子模块名</artifactId>
<artifactId>HelloWorld<artifactId>
<version>版本号</version>
<version>2.1.6.RELEASE</version>
(如果本地仓库没有相关依赖,他会从maven的setting.xml里面设置好的中心仓库镜像地址 下载依赖到本地仓库,然后再从本地仓库加载依赖到项目)
5.排除依赖包
有两个jar包 A.jar(a.java,b.java,c.java) B.jar(x.java,y.java,z.java)
依赖的本质: A.jar中的 b.java 依赖于B.jar中的z.java
那么我只想用b.java 需要去除z.java
在pom.xml的<dependencies></dependcies>中添加
<dependencies>
<exclusions>
<exclusion>
<groupId>需要取消依赖的jar坐标 </groupId>
<artifactId>子模块名</artifactId>
</exclusion>
</exclusions>
</dependencies>