Maven 项目构建生命周期

这篇具有很好参考价值的文章主要介绍了Maven 项目构建生命周期。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

😀前言
在现代软件开发中,构建和管理项目成为了一个核心环节。Apache Maven 不仅仅是一个便捷的项目构建工具,它还提供了一个全面的框架来理解和掌控软件项目的构建过程。通过定义明确的构建生命周期和灵活的插件机制,它极大地简化了构建和项目管理过程。在本篇文章中,我们将深入探讨 Maven 的构建生命周期和其插件机制,通过一步步的解析来帮助你更好地理解和使用 Maven

🏠个人主页:尘觉主页
Maven 项目构建生命周期,常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器

🧑个人简介:大家好,我是尘觉,希望我的文章可以帮助到大家,您的满意是我的动力😉😉

在csdn获奖荣誉: 🏆csdn城市之星2名
⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 💓Java全栈群星计划top前5
⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 🤗 端午大礼包获得者
⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 🥰阿里云专家博主
⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 😉亚马逊DyamoDB结营

💕欢迎大家:这里是CSDN,我总结知识的地方,欢迎来到我的博客,感谢大家的观看🥰
如果文章有什么需要改进的地方还请大佬不吝赐教 先在次感谢啦😊

深入探讨Maven构建生命周期及插件机制

一句话: Maven 构建生命周期描述的是一次构建过程经历了多少个事件

Maven 项目构建生命周期,常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器

生命周期的3 大阶段

clean

清理工作

Maven 项目构建生命周期,常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器

default

核心工作,例如编译,测试,打包,部署等

Maven 项目构建生命周期,常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器

site

产生报告,发布站点等

Maven 项目构建生命周期,常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器

生命周期是分阶段执行的

一句话: 项目构建生命周期分很多阶段,并不是每次都完整执行,而是根据用户的要求来执行的【比如你执行compile, 那么就执行到complie 这个阶段,如果你执行install, 则会执行compile->test->package->install】

举例说明

1、演示compile

Maven 项目构建生命周期,常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器

2、演示install

Maven 项目构建生命周期,常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器

maven 插件

介绍

1、插件与生命周期内的某个阶段绑定,在执行到对应生命周期时, 由对应插件来完成任务/功能.

2、maven 插件很多,先看一张图:

Maven 项目构建生命周期,常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器

3、通过插件可以自定义其他功能

4、文档: http://maven.apache.org/plugins/index.html

自定义插件-应用实例

需求: 在pom.xml 加入自定义插件,能够在对maven_D 项目打包时,能输出主程序和测试程序的源码

完成步骤
  1. 当前package 只会得到项目的jar

Maven 项目构建生命周期,常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器

  1. 修改D:\java_projects\maven_D\pom.xml, 加入maven 插件并配置(注意: 加入自定义插件后,可能会爆红,重启项目即可.)
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         韩顺平Java 工程师
         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.wyx</groupId>
    <artifactId>maven_D</artifactId>
    <version>1.0-SNAPSHOT</version>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13.2</version>
            <!-- 解读
            1. option 默认是false , 即不隐藏
            2. option 设置为true , 即隐藏-->
            <optional>false</optional>
            <!-- scope 设置为test, 让他在test 范围有效-->
            <scope>compile</scope>
        </dependency>
    </dependencies>
    <!--在build 时,自定义的插件-->
    <build>
        <plugins>
            <plugin>
                <!-- 插件坐标-->
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <version>2.2.1</version>
                <executions>
                    <execution>
                        <goals>
                            <!-- 对主程序输出源码打包-->
                            <goal>jar</goal>
                            <!-- 对测试程序输出源码打包-->
                            <goal>test-jar</goal>
                        </goals>
                        <!-- 在generate-test-resources 阶段执行-->
                        <phase>generate-test-resources</phase>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>
  1. 观察一下maven 项目管理器

Maven 项目构建生命周期,常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器

  1. 再次执行maven-D 的intall 操作, 会得到两个新的jar ,分别包含了主程序和测试程序的源码。(说明: 测试时,需要保证src/main/… 和src/test/… 两个目录下有java 源代码,否则不会生成源码jar)

Maven 项目构建生命周期,常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器

  1. 解压得到jar , 可以看到源码了.

Maven 项目构建生命周期,常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器

maven 插件-maven 构建生命周期关系图

Maven 项目构建生命周期,常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器

图解

  1. 在maven 项目构建生命周期中,每个阶段的执行都有相应的插件完成

  2. 各个插件执行过程中,会附带输出内容,比如jar/war/xml/源码

  3. 程序员可以使用maven 默认的插件,也可以自定义插件,完成定制任务.

  4. 自定义插件引入成功, 是可以看到

Maven 项目构建生命周期,常用工具,maven,pycharm,java,开发语言,数据库,ide,服务器

😄总结

通过深入解析 Maven 的构建生命周期和插件机制,我们不仅掌握了 Maven 项目构建的核心概念,也学会了如何利用插件来定制和优化我们的构建过程。我们学习了如何清理项目,理解了默认生命周期中各个阶段的职责,以及如何生成项目报告和站点。

同时,我们还详细探讨了 Maven 插件的作用和使用方式,包括如何通过配置插件来输出项目和测试的源代码,这为我们提供了一个更灵活和强大的构建工具。

希望通过本文,您不仅对 Maven 有了更深入的理解,也能够更加熟练和高效地利用 Maven 来管理和构建您的项目。记得,实践是最好的老师,不妨尝试自己创建和配置 Maven 项目,探索更多的 Maven 插件和功能,将其充分应用到您的项目中,从而更好地掌握 Maven 的强大功能。

😁热门专栏推荐
想学习vue的可以看看这个

java基础合集

数据库合集

redis合集

nginx合集

linux合集

手写机制

微服务组件

spring_尘觉

springMVC

mybits

等等等还有许多优秀的合集在主页等着大家的光顾感谢大家的支持

🤔欢迎大家加入我的社区 尘觉社区

文章到这里就结束了,如果有什么疑问的地方请指出,诸佬们一起来评论区一起讨论😁
希望能和诸佬们一起努力,今后我们一起观看感谢您的阅读🍻
如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞文章来源地址https://www.toymoban.com/news/detail-558240.html

到了这里,关于Maven 项目构建生命周期的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C++ 软件常用分析工具及项目实战问题分析案例集锦

    目录 1、库依赖关系查看工具Dependency Walker 2、GDI对象查看工具GDIview 3、PE信息查看工具PeViewer/MiTeC EXE Explorer 4、进程信息查看工具Process Explorer 5、进程监控工具Process Monitor 6、API函数调用监测工具API Monitor C++软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续

    2024年02月03日
    浏览(47)
  • Jira最新安装破解文档,企业常用项目管理工具Jira

    安装docker 启动docker 上传并解压(tar -xvf)数据库驱动(tar.gz),上传破解jar包(atlassian-agent.jar) 运行命令,下载镜像并启动mysql容器 进入/var/lib/docker/volumes/mysql_conf/_data/目录,执行命令 vim mysql.cnf 接下来按顺序执行以下命令: 按照指示填,即可破解成功!!!

    2024年02月12日
    浏览(41)
  • 在IT行业,管理者常用的三款项目管理工具

    对于IT项目管理工具相信很多开发者都不陌生,因为它是我们每天都要接触的。项目管理是一个复杂的过程,一款专业的项目管理工具能够有效帮助团队提升研发效能,促进项目的良好运转,保障项目的有序实施。但是在前期选择IT项目管理工具的时候往往是我们最头疼的时候

    2024年02月05日
    浏览(39)
  • 【Alibaba工具型技术系列】「EasyExcel技术专题」实战技术针对于项目中常用的Excel操作指南

    EasyExcel教程 本文使用的技术是Alibaba集团开源的EasyExcel技术,该技术是针对Apache POI技术的封装和优化,主要解决了POI技术的耗内存问题,并且提供了较好的API使用。 使用步骤繁琐 动态写出Excel操作非常麻烦 对于新手来说,很难在短时间内上手 读写时需要占用较大的内容,当

    2024年01月19日
    浏览(41)
  • 【Maven三】——maven生命周期和插件

    Maven之POM介绍 maven命令上传jar包到nexus 【Maven二】——maven仓库 由于在具体项目开发过程中对于maven的理解和掌握处于基本运用的阶段,了解maven过于片面,所以本篇博客是博主学习《maven实战》书籍之后对maven生命周期和插件的总结,绝大多数内容源于《maven》实战这本书籍。

    2024年02月16日
    浏览(35)
  • Maven(3)---Maven插件和生命周期

    在前两篇博客中,我们已经了解了Maven的基础知识、安装配置和依赖管理。本篇博客将重点介绍Maven的插件和生命周期,它们是Maven的核心特性之一。 Maven插件是用于扩展和增强Maven的功能的工具。插件可以执行各种任务,如编译、测试、打包、部署等。Maven插件基于插件目标(

    2024年02月05日
    浏览(36)
  • Maven-生命周期及命令

    ✍写作原因 之前在学校学习的时候,编写代码使用的项目都是单体架构,导入开源框架依赖时只需要在pom.xml里面添加依赖,点一下reload按钮即可解决大部分需求;但是在公司使用了dubbo微服务架构之后发现只知道使用reload不足以胜任工作需求。  🎯写作目的 了解maven地生命

    2024年02月14日
    浏览(40)
  • 前端新手Vue3+Vite+Ts+Pinia+Sass项目指北系列文章 —— 第十二章 常用工具函数 (Utils配置)

    在项目开发中,我们经常会使用一些工具函数,也经常会用到例如 loadsh 等工具库,但是这些工具库的体积往往比较大,如果项目本身已经引入了这些工具库,那么我们就没有必要再引入一次,所以我们需要自己封装一些工具函数,来简化我们的开发。 在 src/utils 目录下创建

    2024年02月20日
    浏览(57)
  • Maven项目构建工具

    目录         1.Maven介绍                 1.1Maven是什么                 1.2为什么要使用maven         2.Maven安装                 2.1下载Maven:                 2.2解压并配置                 2.3编辑Maven环境变量               

    2024年01月20日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包