maven

maven 学习总结

maven 是什么?

maven主要是用来做项目管理的。

  • maven能管啥?
    Builds、Documentation、Reporting、Dependencies、SCMs、Releases、Distribution
  • 如何配置maven?
    首先我们创建一个文件夹,maven,再执行以下命令
    1
    2
    3
    4
    mvn -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
坚持原创技术分享,您的支持将鼓励我继续创作!