什么是Maven?
Maven是由Apache开发的一个软件项目管理工具。
Maven的作用?
1.帮助我们依赖管理,不用每次自己拷贝jar包到resource中,然后使用的时候还得导入。我们可以通过maven项目的pom.xml文件引入依赖坐标即可。
2.项目构建:项目生命周期管理,编译、测试、打包、部署和运行
3.分模块构建,提高开发效率
Maven的好处
减小项目的文件大小,因为jar包很占空间的。
什么是Maven仓库和坐标
仓库分本地仓库(本地电脑存放jar包的地方,repository);中央仓库(maven官方提供jar包的地方);远程仓库(阿里私服,对外开放)。
坐标,顾名思义就是jar包的位置,也叫唯一标识;GAV(公司组织groupId/项目名称artifactId/当前版本version)。
https://mvnrepository.com/Maven仓库官网 :https://mvnrepository.com/
工作流程
Maven的安装
1.下载: Maven – Welcome to Apache Maven
2.安装:解压即安装,解压到一个没有中文和空格的目录
3.配置maven的环境变量:配置MAVEN_HOME和Path
4.环境变量配置好后,那就是开始配置我们的本地仓库了
4.1 在maven的安装目录中conf/ settings.xml文件,在这里配置本地仓库(以后你下载的jar就存在这里了,下载错误了,比如由于网络中断会导致jar下载不完整,再次联网后下载会导致无法成功下载,可以下载一个清理工具清理后再重新下载,我们简称大招清理工具)。
4.2 配置了本地仓库后我们还要配置我们的远程仓库,这里我们可以使用阿里的;毕竟阿里出品定是金品,哈哈。
在maven的安装目录中conf/ settings.xml文件,在这里配置远程仓库
将如下内容放入settings.xml中的==mirrors==标签内部即可
<!--阿里巴巴远程仓库镜像配置 新版-->
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
5.maven安装成功后打开cmd窗口进行测试;输入mvn -v
6.maven安装好后还要在IDEA中集成
打开IDEA,找到:如下
创建工程不需要联网,解决创建慢的问题
每次创建Maven工程的时候,总是需要重新选择Maven配置信息,那是因为默认的Maven环境不是我们当前的maven环境,所以需要配置。
即通过new Projects Settings --> Settings for new project配置
剩下配置和上面一样!!!
7.重启IDEA就行了
使用IDEA创建Maven工程
8.1 创建java工程
使用Maven创建工程,我们有两种选择方式,一种是用maven自带的骨架创建。还有一种就是我们自己创建;实际工作当中我们还是自己手动创建。
8.2 创建javaweb工程
-
创建javaweb工程与创建javase工程类似,但在选择Maven骨架时,选择==maven-archetype-webapp==即可:
-
-
创建好的javaweb工程如下:
-
所以,要手动创建一个java目录用于编写java代码
-
-
还要将java目录添加为Source Root:
8.3 发布web工程,这里用tomcat
9.上面是使用骨架来创建工程的,如果不使用骨架,怎样创建工程呢?
只需要在创建第一步的时候 不选择模板就可以了;其余操作都是一样的。就是要自己补全一些标签配置文件罢了。
这个插件可以把javase项目转为javaweb项目!
手动创建就是不勾选骨架就好了。大家可以自己动手试试
Maven命令
-
clean:清理target目录下的内容,清理缓存
-
compile:重新编译
-
test:执行所有的src/test/java下的单元测试
-
package:打包 javase打jar包 javaweb打war包
-
install:将javase项目打成jar包安装到本地仓库 方便其他项目通过添加坐标引用
maven生命周期:compile --> test --> package --> instal
当执行了install命令时,会执行编译、测试、打包
Maven插件
注意: Maven的中央仓库中只有Tomcat7.X版本的插件,而之前我们使用的是8.X的版本,如果想使Tomcat8.X的插件可以去其他第三方仓库进行寻找,或者使用IDEA集成外部Tomcat8极其以上版本,进行项目的发布。
maven 私服
公司在自己的局域网内搭建自己的远程仓库服务器,称为私服, 私服服务器即是公司内部的 maven 远程仓库, 每个员工的电脑上安装 maven 软件并且连接私服服务器,员工将自己开发的项目打成 jar 并发布到私服服务器,其它项目组从私服服务器下载所依赖的构件(jar)。私服还充当一个代理服务器,当私服上没有 jar 包会从互联网中央仓库自动下载。