maven基础概念及操作
- 一:maven的作用
- 二:maven仓库
- 三:maven项目结构
- 四:maven基础常用命令
- 五:maven的生命周期与插件
- 1.生命周期
- 2.插件
- 六:maven的坐标定义
- 七:依赖管理
一:maven的作用
- 构建项目:编译、测试、打包、部署
- 依赖管理:对jar包进行管理
二:maven仓库
本地仓库:存储从远程仓库或中央仓库下载下来的jar包,项目使用jar包时优先从本地仓库查找
远程仓库(私服):项目使用的jar包在本地没有时去远程仓库进行下载,远程仓库可在互联网也可在局域网(私服)
中央仓库:maven团队维护的jar包仓库,maven软件内置了中央仓库地址,我们一般替换成alyun仓库地址
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
三:maven项目结构
java项目:
web项目:
四:maven基础常用命令
- mvn clean:清理
将项目根目录下target目录清理掉。 - mvn compile:编译
将项目中.java文件编译为.class文件
3.mvn test:单元测试
单元测试类名有要求:XxxxTest.java
将项目根目录下src/test/java目录下的单元测试类都会执行 - mvn package:打包
web project ---- war包
java project -----jar包
将项目打包,打包项目根目录下taget目录 - mvn install:安装
打包到本地仓库,让其它项目依赖 - mvn deploy:部署
将打好的包复制到远程仓库
五:maven的生命周期与插件
1.生命周期
在maven中存在“三套”生命周期,每一套生命周期相互独立,互不影响。在一套生命周期内,执行后面的命令前面操作会自动执行
CleanLifeCycle:清理生命周期
clean
defaultLifeCycle:默认生命周期
compile,test,package,install,deploy
siteLifeCycle:站点生命周期
site
2.插件
例:将源代码打包
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.2.1</version>
<executions>
<execution>
<goals>
<goal>jar</goal>
</goals>
<phase>generate-test-resources</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
六:maven的坐标定义
七:依赖管理
- 依赖传递:依赖具有传递性
- 直接依赖:在当前项目中配置的jar包称为直接依赖
- 间接依赖:在当前项目配置的jar包中配置的其它jar包,被称为当前项目的间接依赖
- 可选依赖:当前jar包被配置在项目中时,可选择将当前jar包中某个jar包对项目不可见
即对外隐藏: - 排除依赖:排除配置在当前项目jar包中的某个jar包
- 依赖范围