由于maven的安装比较简单,这边就直接掠过,不过可以到相应的官网去下载
首先我们要明白什么是maven,maven能为我们干什么,maven的生命周期是什么,有那些标签,我们才可以肆无忌惮的去学
maven的定义:Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。
maven能干嘛:
1.Maven最大化的消除了构建的重复.
2.Maven可以帮助我们标准化构建过程.所有的项目都是简单一致的,简化了学习成本.
3.maven可以帮我们执行一些较为复杂的流程,比如打包执行
maven的生命周期:
Clean Lifecycle 在进行真正的构建之前进行一些清理工作。
Default Lifecycle 构建的核心部分,编译,测试,打包,部署等等。
Site Lifecycle 生成项目报告,站点,发布站点。
接下来我们来看看Default Lifecycle里面一般会有那些操作,打开官网地址
http://maven.apache.org/guides/getting-started/maven-in-five-minutes.html
在cmd命令窗口下输入以下命令
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app
-DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
这里的archetype相当于一个插件,内含许多命令子集
-DgroupId 是项目的包名
DartifactId 是工程项目名字
DarchetypeArtifactId maven创建工程的类型
DinteractiveMode 交互模式,默认为true。
执行完以上命令行会出现如下目录结构
my-app
|– pom.xml
-- src
– java
|-- main
|
| -- com
– mycompany
|
| -- app
– App.java
|
-- test
– java
-- com
– mycompany
-- app
– AppTest.java
pom文件如下:
<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>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Maven Quick Start Archetype</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.2</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
我们接着可以对项目进行打包处理,输入如下命令:
mvn package
在我们的工程目录会多出一个target包,里面有我们刚刚打包为jar的文件
maven打包执行的流程如下
- 先验证数据是否为合法数据
- 查找来源
- 执行来源
- 查找资源
- 执行资源
- 编译
通过如下命令我们就可以打印刚刚打包的jar文件里面的主类了
java -cp target/my-app-1.0-SNAPSHOT.jar com.mycompany.app.App
执行的结构为helloworld
常见的命令还有如下: