标签:
1:概念
Maven是跨平台的项目管理工具。作为Apache组织中的一个颇为成功的开源项目,主要服务于基于java平台的项目构建、依赖管理和项目信息管理。
2:特点
(1)自动构建:傻瓜化、高度自动化、一部构件
(2)依赖管理:自动下载相关jar包,统一依赖管理
(3)项目信息管理:项目信息、开发人员信息、开发者信息、文档自动生成
3:约定
目 录 |
用 途 |
|
1 |
src/main/java |
存放项目的java文件 |
2 |
src/main/resources |
存放项目资源文件,如spring、hibernate的配置文件 |
3 |
src/test/java |
存放所有测试的java文件 |
4 |
src/test/resources |
测试资源文件 |
5 |
target |
项目输出位置,每次构建自动产生 |
6 |
pom.xml |
Maven工程配置文件,相对于web工程中的web.xml |
4:坐标
Maven世界拥有大量构建,我们需要找一个用来唯一标识一个构建的统一规范
坐标主要组成
5:依赖管理
依赖范围scope
传递性依赖
传递性依赖原则:
6:生命周期管理
Maven生命周期就是为了对所有的构建过程进行抽象和统一,包括项目清理,初始化,编译,打包,测试,部署等几乎所有构建步骤
三大生命周期
compile—> test—> package—> install—> deploy
7:继承与聚合
继承:
继承为了消除重复,我们把很多相同的配置提取出来
聚合:
如果我们想一次构建多个项目模块,那我们就需要对多个项目模块进行聚合
4:mvn命令
mvn 插件名:目标名
(mvn compile 隐含没有显式的指定)
清除 mvn clean
编译 mvn compile
测试 mvn test 执行junit测试,并输出报告
测试某一个测试类 mvn test -Dtest=MldcCompanyServiceImplTest
打包 mvn package 生成jar包
安装 mvn install 发布到个人仓库中
转成eclipse项目 mvn eclipse:eclipse
生成依赖树 mvn dependency:tree > tree.txt
注:(1)运行mvn命令必须在pom.xml同路径下
(2)pom.xml文件中文乱码问题:
将pom.xml文件另存,保存时选择utf-8格式即可
(3)若更改了用户的setting.xml文件。一定要在Maven-->Uer setting中Update Setting
(4)
标签:
原文地址:http://www.cnblogs.com/stsjiayou/p/4510149.html