Maven项目构建的生命周期

目录

1.1 生命周期是什么

1.2 maven的三套生命周期

clean生命周期

default生命周期

site生命周期

2、maven生命周期相关命令

2.1、mvn clean

2.2、mvn compile

2.3、mvn test

2.4、 mvn package

2.5、 mvn install

2.6、mvn tomcat:run


1.1 生命周期是什么

在Maven出现之前,项目构建的生命周期就已经存在,软件开发人员每天都在对项目进行清理,编译,测试及部署。虽然大家都在不停地做构建工作,但公司和公司间,项目和项目间,往往使用不同的方式做类似的工作。

Maven的生命周期就是为了对所有的构建过程进行抽象和统一。Maven从大量项目和构建工具中学习和反思,然后总结了一套高度完美的,易扩展的生命周期。这个生命周期包含了项目的清理,初始化,编译,测试,打包,集成测试,验证,部署和站点生成等几乎所有构建步骤。

Maven的生命周期是抽象的,这意味着生命周期本身不做任何实际工作在Maven的设计中,实际任务(如源代码编译)都交由插件来完成。

1.2 maven的三套生命周期

maven拥有三套相互独立的生命周期,分别是clean,default和site。clean 生命周期的目的是清理项目default 生命周期的作用是构建项目site 生命周期的目的是构建项目站点

maven的生命周期都对应着具体的命令如下:

clean生命周期

clean生命周期的目的是清理项目,它包含三个阶段:

  1. pre-clean 执行一些清理前需要完成的工作;
  2. clean 清理上一次构建生成的文件;
  3. post-clean 执行一些清理后需要完成的工作;
default生命周期

default生命周期定义了真正构建项目需要执行的所有步骤,它是所有生命周期中最核心的部分。其中的重要阶段如下:

  1. compile :编译项目的源码,一般来说编译的是src/main/java目录下的java文件至项目输出的主classpath目录中;
  2. test :使用单元测试框架运行测试,测试代码不会被打包或部署;
  3. package :接收编译好的代码,打包成可以发布的格式,如jar和war;
  4. install: 将包安装到本地仓库,供其他maven项目使用;
  5. deploy :将最终的包复制到远程仓库,供其他开发人员或maven项目使用;
site生命周期

site生命周期的目的是建立和发布项目站点,maven能够基于pom文件所包含的项目信息,自动生成一个友好站点,方便团队交流和发布项目信息。该生命周期中最重要的阶段如下:

  1. site :生成项目站点文档;

2、maven生命周期相关命令

我们使用以下命令可以完成maven生命周期,演示生命周期的命令必须在pom.xml所在的目录下打开dos窗口然后输入如下命令进行演示。

1.找到pom.xml文件位置

2.在pom.xml文件位置输入cmd打开dos窗口

mvn clean:调用clean生命周期的clean阶段,清理上一次构建项目生成的文件;
mvn compile :编译src/main/java中的java代码;
mvn test :编译并运行了test中内容 ;
mvn package:将项目打包成可发布的文件,如jar或者war包; 
mvn install :发布项目到本地仓库 ;
2.1、mvn clean

clean命令的作用是清理项目编译或打包后生成的文件,具体对应maven项目中的target目录;

需求:清理存储上一次构建项目生成的文件target.

未清理前:

清理之后:

2.2、mvn compile

compile命令的作用是编译src/main/java中的java代码编译成可直接运行的class文件。编译完成后maven项目会自动创建一个target目录来存储这些文件。

2.3、mvn test

test命令的作用是编译并运行maven项目的src/test目录下的junit测试代码。注意:只能运行junit测试代码。 **并且使用test运行的测试类的类名必须以Test结尾,否则不会运行,不会看到结果。

在test/java目录下创建一个测试类,书写测试方法,代码如下:

package com.itheima.sh.maven_test_01;
import org.junit.Test;
public class MavenTest {
    @Test
    public void show() {
        System.out.println("show....");
    }
}

在dos窗口输入的测试命令:

mvn test

2.4、 mvn package

package命令是将项目打包成可以发布的包。maven项目常见的打包方式有两种:

1)maven的java project会打成jar包。

2)maven的web project会打成war包。

打包完成后将生成的文件存放在target目录中。

命令使用格式:

mvn package

注意:每次打包前还会再次执行所有test命令

2.5、 mvn install

install命令是将当前的项目打包并发布到本地仓库中,供本地的其他maven项目使用。项目发布的路径:**本地仓库路径/groupId/artifactId/

注意:每次安装前还会再次执行所有test命令

2.6、mvn tomcat:run

tomcat:run表示部署项目,项目上线运行。能够部署项目都是web项目。我们这里演示部署web项目。这里启动tomcat并不是使用idea中的tomcat,而是maven自带的。所以我们部署好项目之后发现idea中的tomcat并没有启动。

注意:使用maven在命令行中部署项目,一定要停止idea中的tomcat。否则,在命令行中不会启动成功tomcat。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值