Maven 常用命令
compile
compile 是maven 工程的编译命令,作用是将src/main/java 下的文件编译为class 文件输出到target目录下。
test
test 是maven 工程的测试命令 mvn test,会执行src/test/java 下的单元测试类。
clean
clean 是maven 工程的清理命令,执行clean 会删除target 目录及内容。
package
package 是maven 工程的打包命令,对于java 工程执行package 打成jar 包,对于web 工程打成war包。
install
install 是maven 工程的安装命令,执行install 将maven 打成jar 包或war 包发布到本地仓库。从运行结果中,可以看出:当后面的命令执行时,前面的操作过程也都会自动执行,
Maven 指令的生命周期
maven 对项目构建过程分为三套相互独立的生命周期,请注意这里说的是“三套”,而且“相互独立”,这三套生命周期分别是:Clean Lifecycle 在进行真正的构建之前进行一些清理工作。Default Lifecycle 构建的核心部分,编译,测试,打包,部署等等。Site Lifecycle 生成项目报告,站点,发布站点。
maven 的概念模型
Maven 包含了一个项目对象模型(Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。
- 项目对象模型(Project Object Model)
一个maven 工程都有一个pom.xml 文件,通过pom.xml 文件定义项目的坐标、项目依赖、项目信息、插件目标等。
- 依赖管理系统(Dependency Management System)
通过maven 的依赖管理对项目所依赖的jar 包进行统一管理。比如:项目依赖junit4.13,通过在pom.xml 中定义junit4.13 的依赖即使用junit4.13,如下所示是junit4.13的依赖定义:
<dependency> <!-- junit 的项目名称 --> <groupId>junit</groupId> <!-- junit 的模块名称 --> <artifactId>junit</artifactId> <!-- junit 版本 --> <version>4.13</version> <!-- 依赖范围:单元测试时使用junit --> <scope>test</scope> </dependency>- 一个项目生命周期(Project Lifecycle)
使用maven 完成项目的构建,项目构建包括:清理、编译、测试、部署等过程,maven 将这些过程规范为一个生命周期,如下所示是生命周期的各个阶段:maven 通过执行一些简单命令即可实现上边生命周期的各各过程,比如执行mvn compile 执行编译、执行mvn clean 执行清理。
- 一组标准集合
maven 将整个项目管理过程定义一组标准,比如:通过maven 构建工程有标准的目录结构,有标准的生命周期阶段、依赖管理有标准的坐标定义等。
- 插件(plugin)目标(goal)
maven 管理项目生命周期过程都是基于插件完成的。
本文内容到此结束了, 如有收获欢迎点赞