JavaWeb3——Maven
2022/7/2
一、什么是Maven?
Maven:项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POM)
项目构建:提供标准的、跨平台的自动化项目构建方式;
依赖管理:方便快捷地管理项目依赖的资源,并且避免资源之间的版本冲突问题;
统一开发结构:
-src
-main
-java
-resources
-test
-java
-resources
二、基本概念:
1、仓库(repository)
存储资源,管理jar包
本地仓库:自己电脑上存储资源的仓库,连接远程仓库获取资源;
远程仓库:非本机电脑上的仓库,为本地仓库提供资源;
·中央仓库:Maven团队维护,存储所有资源的仓库;
·私服:部门/公司范围内存储资源的仓库,从中央仓库获取资源
私服的作用:
保存具有版权的资源,包含购买或者自主研发的jar;中央仓库的jar都是开源的,不能存储具有版权的资源
一定范围内共享资源,仅对内部开放,不对外共享
2、坐标:
Maven中的坐标用于描述仓库中资源的位置
一个很重要的网址:mvnrepository.com (可以查找仓库jar包,并且复制地址)
坐标组成:
①groupId:定义当前Maven项目隶属组织名称(域名反写)
②artifactId:定义当前Maven项目名称(通常是模块名称,例如CRM、SMS)
③version:定义当前项目版本号
不太重要:packaging:定义当前项目打包方式
作用:使用唯一标识,唯一性定位资源位置,通过该标识可以将资源的识别与下载交由机器完成。
3、仓库配置:
两个关键位置:
一个是localRepository,一个是mirror
下载maven官网的压缩包解压(3.8.1支持,以上版本idea兼容不了),找到/conf/setting.xml
localrepositort配置参考:(写上本地仓库地址,前一行是示例)
<localRepository>/path/to/local/repo</localRepository>
-->
<localRepository>C:\Users\ASUS\Desktop\暑假自学\JavaWeb开发\Maven\repository</localRepository>
mirror配置参考(国内镜像站,ali)
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
4、idea配置maven
首先在setting里指定本地的maven和对应setting,然后可以在project structure里创建new module(maven),可以通过两种方式创建maven,一种是自己定义,一种是基于网络结构创建。
简化maven运行,可以在edit内自定义操作
配置tomcat,通过build建立;添加依赖jar包或者依赖其它的maven项目,使用dependency