一:maven管理的项目的结构
二:maven常用命令
mvn -v 查看maven版本
mvn compile 编译
mvn test 测试
mvn package 打包
mvn clean 删除target
mvn install 安装jar包到本地仓库中**
【通过mvn compile编译源代码,如果在编译的过程中程序用到了其他的依赖包,它会去pom.xml中查找是否引入了该依赖包的坐标(groupId,artifactId,version),如果找到了该坐标,会去本地仓库中查找是否有相应的jar,如果没有的话,会去maven的中央仓库中去找并下载到本地仓库中,供项目引用。】
2.1:maven创建目录的两种方式:
1.archetype:generate 按照提示进行选择
2.命令:archetype:generate -DgroupId=组织名,公司网址的反写+项目名
-DartifactId=项目名-模块名
-Dversion=版本号(0.0.1SNAPSHOT)
仓库:本地仓库和远程仓库
镜像仓库:Maven下的settings.xml 里mirrors
更改本地仓库位置:Maven下的settings里localRepository
三:maven生命周期
clean 清理项目
default 构建项目
site 生成项目站点
四:pom.xml的元素解析:
<project>
根
<modelVersion>
指定了当前pom的版本
<groupId>
反写的公司网址+项目名
<artifactId>
项目名+模块名
<version>
第一个0表示大版本号、第二个0表示分支版本号、第三个0表示小版本号, 如 0.0.1SNAPSHOT
<packaging>
打包方式,默认是jar
<name>
项目描述名
<url>
项目地址
<description>
项目描述
<developers>
开发人员列表
<licenses>
许可证信息
<organization>
组织信息
<dependencies>
依赖列表
<plugin>
插件列表
<build>
配置
<scope>
:依赖范围
- compile:默认的范围,编译、测试以及运行阶段都有效
- provided:在编译和测试时有效
- runtime:在测试和运行时有效
- test:只在测试范围有效
- system:依赖范围和provided类似,但与本机系统相关联,可移植性差
- import:导入的范围,它只使用在dependencyManagement中,表示从其他的pom中导入dependency的配置