clean,install,package,deploy分别代表什么含义?

小课堂

分享人: 韦杰

目录

1.背景介绍

2.知识剖析

3.常见问题

4.解决方案

5.编码实战

6.扩展思考

7.参考文献

8.更多讨论

1.背景介绍

Maven的生命周期

Maven的生命周期是对所有的构建过程进行抽象和统一。Maven的生命周期是抽象的,这意味着生命周期本身不做任何实际的工作,生命周期知识定义了一系列的阶段。

每个生命周期内都包含一些阶段,这些阶段是有顺序的,并且后面的阶段依赖于前面的阶段。

2.知识剖析

1.clean生命周期

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

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

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

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

2.default生命周期

default生命周期定义了真正构建时所需要执行的步骤,它是生命周期中最核心的部分,它包含有23个阶段,下面是5个典型的阶段:

1)compile 编译项目的主源代码

2)test 使用单元测试框架运行测试,测试代码不会被打包或部署

3)package 接受编译好的代码,打包成可发布的格式

4)install 将包安装到Maven本地仓库,供本地其他Maven项目使用

5)deploy 将最终的包赋值到远程仓库,供其他开发人员和Maven项目使用

3.site生命周期

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

1)pre-site 执行一些在生成项目站点之前需要完成的工作

2)site 生成项目站点文档

3)post-site 执行一些在生成项目站点之后需要完成的工作

4)site-deploy 将生成的项目站点发布到服务器上

每个生命周期之间是相互独立的,我们可以仅仅调用clean生命周期的某个阶段,或者仅仅调用default生命周期的某个阶段,而不会对其他生命周期产生任何影响。而在执行这些阶段时,实际的工作还是由插件来完成的

3.常见问题

用mvn install后,新改的内容不生效

4.解决方案

1)使用mvn clean install

2)使用参数mvn install -Djar.forceCreation

5.实战

6.扩展思考

7.参考文献

参考一:Maven生命周期详解

参考二:Maven构建生命周期

参考三:Maven生命周期及其他核心概念

8.更多讨论

鸣谢

感谢大家观看

BY : 韦杰

Contact GitHub API Training Shop Blog About