Maven的作用
1,创建项目
2,引入依赖的jar包
3,发布管理项目
maven中一个核心概念----仓库
本地仓库:计算机上的仓库
远程仓库:网络上的仓库 ------中央仓库(Maven官方提供的仓库大全),私服(局域网中搭建的maven仓库,为公司内开发人员公用),其他公共库(比如阿里巴巴公共库)
pom文件详解
Maven项目中pom.xml文件可以对依赖进行管理。
pom.xml文件中主要包含的标签
-
groupId:项目的全球唯一标识,与java包名的命名方式相同
-
artifactId:本项目的唯一ID,一般为项目名称
-
version:项目的版本号,snapshot–代表当前版本是快照版本,release表示最终发布版本
-
parent:表示父依赖,当前项目可以继承父依赖中配置的依赖和属性,类似继承。指定父依赖时,需要指定父依赖的groupId,artifactId,version,relativePath(父项目的pom.xml文件的相对路径)
-
packaging:项目的打包方式,一般为jar或者war.
-
name:项目名称,Maven生成的文档使用。
-
url:项目主页的URL,Maven生成的文档使用。
-
description:项目的描述,Maven生成的文档使用。
-
dependencies:定义此项目的依赖关系集。
-
dependency:定义引入的某个依赖。
-
scope:作用域,compile(编译范围),provided(已提供范围),runtime(运行时范围),test(测试范围),system(系统范围)
-
optional:设置依赖是否可选,默认为false–子项目默认都继承,若为true,则子项目需要显式的引入,与dependencyManagement里定义的依赖类似
-
properties:定义一些常量,可以在pom文件的其他地方引用。
-
build:描述如何编译和打包项目。
默认Maven插件
plugin名称 作用 对应idea操作 maven-clean-plugin 清理上一次执行创建的目标文件 clean maven-resources-plugin 处理资源文件和测试资源文件 compile maven-compiler-plugin 编译源文件和测试源文件 compile maven-surefire-plugin 执行测试文件 test maven-war-plugin或
maven-jar-plugin创建war或jar文件 package maven-install-plugin 将war文件打包放入本地仓库 install maven-deploy-plugin 发布jar文件到指定的仓库 deploy
IDEA中常用Maven操作
- clean:清楚项目编译后的资源文件
- validate:验证工程是否正确,所有需要的资源是否可用,验证pom.xml文件的正确性。
- compile:编译项目,测试代码正确性,
- test:执行项目中的测试用例
- package:将项目打包。
- verify:运行任何检查,验证包是否有效且达到质量标准
- install:将项目打包进本地仓库,
- site:生成项目的网页形式的文档
- deploy:将项目包发布到远程仓库。
热部署
热部署是指修改了代码后不需要重启项目就可以看到功能效果的一种部署方式,IDEA中默认不开启热部署,需要开发人员自行配置开启。