• IDEA中Maven项目的生命周期操作说明


    IDEA中对Maven项目做了相当好的支持,专门有个Maven的模块用于进行项目的操作:

    上图红框中的内容即开发者经常使用的操作,将英文简单翻译过来,其中文分别为Lifecycle(生命周期)、clean(清理)、validate(验证)、compile(编译)、test(测试)、package(打包)、verify(核实)、install(安装)、site(设置)、deploy(部署),附Maven官网对于Maven项目默认生命周期的说明:

    根据Maven的生命周期来说,以上的操作中:一个操作必然包含了其前面所有的步骤,换句话说,只有完成了前面的所有步骤,才能执行该操作

    看起来比较多,但是对于日常的开发来说,常用操作不过二三,针对几个常用的操作进行测试及说明:

    以下分别从IDEA中对Maven项目进行的生命周期操作来观察项目路径下(编译的target文件夹生成在项目路径下,与src目录同级),maven本地仓库中的变化来得出结论

    项目路径:

    本地仓库:

    clean-清理操作

    变化

    项目路径下的 target 目录已删除,本地仓库中如果存在之前已安装的该项目包,不会删除

    结论

    清理掉项目路径下的 target 目录(如果有的话)

    compile-编译操作

    变化

    在项目路径下生成了 target 目录

    结论

    在项目路径下生成 target 目录,但目录中不包含生成的 jar 包或其他类型包

    经测试,compile 操作之前不会先进行 clean 操作,通俗的说:compile 前,target 目录已存在,compile 后,target 目录中的文件不变或增加,但是不会少。

    比如:compile 前 target 目录已存在且 classes 目录下存在 logs 日志文件目录,本次 compile 前修改 pom.xml 中的配置,在标签中的标签中排除 logs 目录,但是仅执行 compile 操作后,查看 target 目录还是可以看到之前的 logs 目录,可见并未进行 clean 操作。再测试执行 clean 后再执行 compile,就没有 logs 目录了

    package-打包操作

    变化

    在项目路径下生成了 target 目录

    结论

    在项目路径下生成 target 目录,目录中包含生成的 jar 包或其他类型包

    install-安装操作

    变化

    在 package 操作基础上,执行 install 后,该项目被部署到了本地仓库中

    结论

    install操作,将jar包或其他类型包安装到本地仓库中,可供本地其他项目进行引用依赖

    deploy-部署操作

    在 install 操作的基础上,将项目生成的 jar 包或其他类型包部署到私服仓库中

    因未部署私服仓库,所以暂未经过测试

    • clean 操作与其他生命周期不存在先后关系,生命周期的操作进行前都不会进行 clean 操作

    • 推荐 package,install 操作前先进行 clean 操作,或在 Execute Maven Goal 框中输入:mvn clean install,也是先清理后安装的操作

    • maven 项目进行的生命周期的操作,都可以在 IDE 的控制台看到操作步骤或查看日志文件

  • 相关阅读:
    OpenGL播放yuv视频
    windows 播放器(wzplayer)
    Lotus中的保留域
    Domino Attachment and Object Service (DAOS)
    关于MyEclipse
    DB2站点荟萃
    @IsMember用法
    深入浅出SharePoint——解读Sharepoint日志之输出缓存
    UML用例图概要
    表单设计中的网页视觉体验
  • 原文地址:https://www.cnblogs.com/zhiyin1209/p/12628531.html
Copyright © 2020-2023  润新知