当前位置: 首页 > article >正文

Maven工具学习使用(五)——生命周期和插件

生命周期

Maven有三套独立的生命周期,分别为clean、default、site。每个生命周期包含一些阶段(phase),这些阶段是有顺序的,并且后面的阶段依赖于前面的阶段。三套生命周期是相互独立的,用户可以仅仅调用clean生命周期的某个阶段,或者仅仅调用default生命周期的某个阶段,而不会对其他生命周期产生任何影响。当调用clean生命周期的clean阶段的时候,不会触发default生命周期的任何阶段,当调用default生命周期的compile阶段的时候,也不会触发clean生命周期的任何阶段。

详细说明参考

https://maven.apache.org/ref/3.9.9/maven-core/lifecycles.html#default_Lifecycle

https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html

clean生命周期,目的是清理项目

1、pre-clean 执行一些清理前需要完成的工作

2、clean 清理上一次构建生成的文件

3、post-clean 执行一些清理后需要完成的工作

default 生命周期

定义了真正构建时所需要执行的所有步骤,核心生命周期

1、validate

2、initialize

3、generate-sources

4、process-sources 处理项目主资源文件。一般来说是对src/main/resources 目录的内容进行变量替换等工作后,复制到项目输出的主classpath目录中。

5、generate-resources

6、process-resources

7、 compile 编译项目主源码。一般来说是编译src/main/java 目录下的java文件至项目输出的主classpath目录中。

8、process-classes

9、generate-test-sources

10、process-test-sources 处理项目测试资源文件。一般来说,是对src/test/resources目录的内容进行变量替换等工作后,复制到项目输出的测试classpath目录中。

11、generate-test-resources

12、process-test-resources

13、test-compile 编译项目的测试代码。一般来说是编译src/test/java目录下的java文件之项目输出的测试classpath目录中。

14、process-test-classes

15、test 使用单元测试框架运行测试。测试代码不会被打包或部署。

16、prepare-package

17、package 接受编译好的代码,打包成可发布的格式,如jar

18、pre-integration-test

19、integration-test

20、post-integration-test

21、verify

22、install 将包安装到Maven本地仓库,共本地其他Ma


http://www.kler.cn/a/612469.html

相关文章:

  • 【基础】Windows 中通过 VSCode 使用 GCC 编译调试 C++
  • 【深度学习】Cross-Attention(交叉注意力)机制详解与应用
  • python将整个txt文件写入excel的一个单元格?
  • Github 2025-03-24 开源项目周报 Top12
  • 从技术架构和生态考虑,不是单纯的配置优化,还有哪些方式可以提高spark的计算性能
  • Linux 系统检测进程死锁的方法
  • Python----计算机视觉处理(Opencv:模板匹配)
  • leetcode_704. 二分查找_java
  • 1字节(8位)表示8个状态位
  • spring @Autowired对属性、set方法,构造器的分别使用,以及配合 @Autowired 和 @Qualifier避免歧义性的综合使用案例
  • 通过 ECNWP 洋流、海浪可视化开发的方法和架构
  • 【NLP 48、大语言模型的神秘力量 —— ICL:in context learning】
  • Windows10清理机器大全集
  • 软件功能性测试工具有哪些?专业软件测试服务推荐
  • Linux下EC11旋转编码器驱动调试
  • 16、Python继承与多态机制深度解析
  • 【linux指令】一文掌握 Linux 基础命令(Linux 命令速查)
  • STM32F103_LL库+寄存器学习笔记07 - 串口接收缓冲区非空中断
  • 一文速通Python并行计算:01 Python多线程编程-基本概念、切换流程、GIL锁机制和生产者与消费者模型
  • C++11大数加减