maven 学习总结
maven 是什么?
maven主要是用来做项目管理的。
- maven能管啥?
Builds、Documentation、Reporting、Dependencies、SCMs、Releases、Distribution - 如何配置maven?
首先我们创建一个文件夹,maven,再执行以下命令1
2
3
4mvn -B archetype:generate \
-DarchetypeGroupId=org.apache.maven.archetypes \
-DgroupId=com.mycompany.app \
-DartifactId=my-app
然后可以看到有个pom.xml文件,内容如下1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>Maven Quick Start Archetype</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
说明以下这个xml的含义吧。
project 所有的顶级元素。modelVersion 模型版本,几乎不动。groupId 项目唯一标识。artifactId 主工件名称。packaging 使用的包类型jar,war。version 工件版本。name 显示项目名称。url 定位找到项目站点位置。description 项目描述。
编译生成target文件
1
mvn compile
测试,这时候会安装很多依赖
1
mvn test
1
mvn test-compile
生成一个jar包,生成位置在target中my-app-1.0-SNAPSHOT.jar
1
mvn package
这时候安装一下。安装目录在${user.home}/.m2/repository 最后在这个目录下很多其他包,找到了我们命名为junit的文件夹。如图

1
mvn install
有很多Maven插件可以开箱即用.
1
mvn site