美文网首页
常用Maven命令以及生命周期

常用Maven命令以及生命周期

作者: Apple_Boy | 来源:发表于2019-07-31 09:46 被阅读0次

    这章我们讲讲几个常用的 Maven 命令。由于执行命令是在工程的基础上来的,所以我们要先创建一个 Maven 工程,具体如何创建,在上一篇博客已经介绍了:http://www.cnblogs.com/ysocean/p/7420373.html

    1、创建 Maven 工程

    image

    ①、在 src/main/java 新建包 com.ys.maven,然后在这个包中创建类 HelloMaven.java

    package com.ys.maven;

    public class HelloMaven {

    //传入一个字符串并返回

    public String Hello(String name){
    return name;
    }
    }

    ②、在 src/test/java 新建包 com.ys.maven,然后在这个包中创建类 HelloTest.java

    package com.ys.maven;

    import junit.framework.Assert;

    import org.junit.Test;

    public class HelloTest {

    @Test

    public void testHello(){

    HelloMaven he = ``new HelloMaven();

    String name = he.Hello(``"Tom"``);

    //判断 Hello 传入的参数是否是 "maven"

    Assert.assertEquals(``"maven"``, name);
    }
    }

    ③、pom.xml 文件如下:
    <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.ys</groupId>

    <artifactId>hellomaven</artifactId>

    <version>``0.0``.``1``-SNAPSHOT</version>

    <dependencies>

    <dependency>

    <groupId>junit</groupId>

    <artifactId>junit</artifactId>

    <version>``4.0``</version>

    <scope>test</scope>

    </dependency>

    </dependencies>

    </project>

    为什么要这样写,我们后面会详细讲解。

    回到顶部

    2、Maven 的常用命令

    1``、mvn compile 编译,将Java 源程序编译成 ``class 字节码文件。

    2``、mvn test 测试,并生成测试报告

    3``、mvn clean 将以前编译得到的旧的 ``class 字节码文件删除

    4``、mvn pakage 打包,动态 web工程打 war包,Java工程打 jar 包。

    5``、mvn install 将项目生成 jar 包放在仓库中,以便别的模块调用

    ①、compile:将Java 源程序编译成 class 字节码文件。

    第一步:选择 pom.xml 文件,右键--->Run As ---->2 Maven build...

    image

    第二步:在第一步执行完后弹出来的对话框中,输入 compile,然后点击 Run 按钮

    image

    第三步:查看控制台

    image

    第四步:在 target 目录下,我们会发现编译生成的 class 文件

    ②、test:测试,并生成测试报告

    第一步:选择 pom.xml 文件,右键--->Run As ---->2 Maven build...,然后在弹出框中输入 test

    或者选择 pom.xml 文件,右键--->Run As------>6 Maven test,如下图

    第二步:查看控制台

    分析测试程序,我们传入的参数是Tom,而我们希望的是maven,很显然是不相等的,那么测试失败

    image

    如果测试类 HelloTest.java改为如下:

    image

    重新执行 mvn test 命令,控制台如下:

    image

    生成的测试报告可以在如下目录查看:target/surefire-reports

    image

    ③、mvn clean 将以前编译得到的旧的 class 字节码文件删除

    第一步:选择 pom.xml 文件,右键--->Run As ---->2 Maven build...,然后在弹出框中输入 clean

    或者选择 pom.xml 文件,右键--->Run As------>3 Maven clean,如下图

    image

    第二步:查看控制台

    image

    第三步:发现 mvn compile 编译好的文件这时已经清除了

      ④、mvn pakage 打包,动态 web工程打 war包,Java工程打 jar 包。

    第一步:选择 pom.xml 文件,右键--->Run As ---->2 Maven build...,然后在弹出框中输入 package

    image

    第二步:查看控制台

    image

    第三步:进入到 target 目录,会发现打出来的 jar 包

    image

    ⑤、mvn install 将项目生成 jar 包放在仓库中,以便别的模块调用

    这里我们就不截图了,执行命令后,进入到 settings.xml 文件中配置的仓库,你会发现生成的 jar 包

    image

    上面部分来源于:https://www.cnblogs.com/ysocean/p/7416307.html

    mvn install 包含 mvn clean吗

    Maven三大生命周期

    • 生命周期Maven有三套相互独立的生命周期,请注意这里说的是“三套”,而且“相互独立”,这三套生命周期分别是:
    • Clean Lifecycle 在进行真正的构建之前进行一些清理工作。
    • Default Lifecycle 构建的核心部分,编译,测试,打包,部署等等。
    • Site Lifecycle 生成项目报告,站点,发布站点。
    • 再次强调一下它们是相互独立的,你可以仅仅调用clean来清理工作目录,仅仅调用site来生成站点。当然你也可以直接运行 mvn clean install site 运行所有这三套生命周期。

    • 所以,不含。

    image.png

    相关文章

      网友评论

          本文标题:常用Maven命令以及生命周期

          本文链接:https://www.haomeiwen.com/subject/fcaarctx.html