Maven入门篇(一)

1.什么是 Maven

Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。
Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目发文时使用 Maven,而且公司项目采用 Maven 的比例在持续增长。
Maven这个单词来自于意第绪语(犹太语),意为知识的积累,最初在Jakata Turbine项目中用来简化构建过程。当时有一些项目(有各自Ant build文件),仅有细微的差别,而JAR文件都由CVS来维护。于是希望有一种标准化的方式构建项目,一个清晰的方式定义项目的组成,一个容易的方式发布项目的信息,以及一种简单的方式在多个项目中共享JARs。

即是一个软件(特别是Java软件)项目管理及自动构建工具,由Apache软件基金会所提供。基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。

1.1Maven的核心

  1. 依赖管理:对项目需要使用到的jar包进行管理。
  2. 项目构建:项目在编码完成后,对项目进行编译、测试、打包、部署。

2.常用的maven命令

mvn archetype:generate 创建Maven项目
mvn compile 编译源代码
mvn deploy 发布项目
mvn test-compile 编译测试源代码
mvn test 运行应用程序中的单元测试
mvn site 生成项目相关信息的网站
mvn clean 清除项目目录中的生成结果
mvn package 根据项目生成的jar
mvn install 在本地Repository中安装jar
mvn eclipse:eclipse 生成eclipse项目文件
mvnjetty:run 启动jetty服务
mvntomcat:run 启动tomcat服务
mvn clean package -Dmaven.test.skip=true:清除以前的包后重新打包,跳过测试类

3.生命周期

  • maven对构建(build)的过程进行了抽象和定义,这个过程被称为构建的生命周期(lifecycle)。
  • 生命周期(lifecycle)由多个阶段(phase)组成,每个阶段(phase)会挂接一到多个goal。
  • goal是maven里定义任务的最小单元,相当于ant里的target。
  • 可以理解maven为一个插件的容器,每个插件绑定到某个goal执行

maven有clean、default、site三种生命周期,clean生命周期在进行真正的构建之前进行一些清理工作。default生命周期定义了真正构建时需要执行的步骤,它是所有生命周期中最核心的部分。site生命周期生成项目报告,站点,发布站点。三套生命周期是互相独立的,每种生命周期的阶段是前后依赖的。执行某个阶段,则会先依次执行该生命周期的前面阶段。

3.1clean生命周期:

pre-clean:执行一些清理前需要完成的工作
clean:清理上一次构建生成的文件
post-clean:执行一些清理后需要完成的工作

3.2default生命周期:

validate - 验证项目是否正确,并且所有必要的信息是否有效
compile - 编译项目的代码
test - 使用合适的单元测试框架测试源码。这些测试代码并不要求打包或者部署
package - 获取编译后的代码,并且把它们打成可派发的格式,比如JAR.
verify - 运行集成测试,以确保项目符合质量标准
install - 安装包到本地的repository中,以便其他项目可以依赖这个项目。
deploy - 在构建的结束阶段,把最终包上传到远端的repository中,以便其他的项目和开发者可以使用。

3.3site生命周期

pre-site执行一些在生成项目站点之前需要完成的工作
site生成项目站点文档
post-site执行一些在生成项目站点后需要完成的工作
site-deploy将生成的项目站点发布到服务器上

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值