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

mvnd-快速打包maven项目

mvnd

  • 一、简介
    • 一、定位与背景
    • 二、核心架构与加速原理
    • 三、使用注意事项
  • 二、下载安装
  • 三、idea集成mvnd插件
  • 四、打包测试时长

一、简介

mvnd(Maven Daemon)是Apache Maven团队推出的高性能构建工具,旨在解决传统Maven构建速度慢的问题。它通过引入守护进程、GraalVM等技术创新,显著提升构建效率,同时保持与Maven的兼容性。以下是其核心要点:

一、定位与背景

  1. 项目起源

    • 由Apache Maven团队开发,是Maven的子项目,借鉴了Gradle的守护进程和Takari的生命周期优化技术。
    • 目标:在不改变Maven使用习惯的前提下,提供更快的构建速度,与Gradle竞争。
  2. 核心问题解决

    • 传统Maven每次构建需重启JVM,加载插件和依赖,耗时严重;mvnd通过守护进程和缓存机制消除这些开销。

二、核心架构与加速原理

  1. 守护进程(Daemon)

    • 长期运行的后台进程,处理连续构建请求,避免重复启动JVM。
    • 支持并行启动多个守护进程,应对高并发构建。
  2. GraalVM替代JVM

    • 客户端使用GraalVM编译为本地可执行文件,启动速度更快,内存占用更低。
  3. 缓存与JIT优化

    • 插件缓存:插件类加载器在多构建间缓存,避免重复解析(快照版本除外)。
    • JIT保留:即时编译生成的本地代码被保留,重复构建时直接使用优化后的代码,减少编译时间。
  4. 并行构建

    • 默认使用多核CPU并行构建模块(核心数公式:max(可用核数-1, 1)),可通过-T1强制串行。

三、使用注意事项

  1. 命令兼容性

    • 只需将mvn替换为mvnd,参数完全一致(如mvnd clean package -DskipTests)。
  2. 局限性

    • 快照插件:不缓存快照版本插件,每次重新加载。
    • 中文乱码:可能需调整终端编码(与IDEA控制台兼容性有关)。
    • 路径转义:Windows配置文件中路径需双斜杠(\\)。

二、下载安装

github地址:https://github.com/apache/maven-mvnd

1、在github下载mvnd解压,目前最新版1.0.2,目录与maven相似
在这里插入图片描述
2、设置环境变量
在环境变——》系统变量——》path添加{maven-mvnd-path}/bin
在这里插入图片描述
3、查看是否安装完成,终端输入命令 mvnd -v,显示版本即安装完成
在这里插入图片描述

三、idea集成mvnd插件

1、idea插件市场安装Maven Helper插件
在这里插入图片描述
2、安装后重启idea,设置maven helper使用mvnd
在这里插入图片描述
3、更改mvnd的配置

配置文件位置
在这里插入图片描述
更换为自己的本地仓库路径
在这里插入图片描述

更换阿里镜像
在这里插入图片描述

4、右键进行打包项目

在这里插入图片描述

四、打包测试时长

使用maven打包,clean后
在这里插入图片描述
第二次使用maven打包。未clean
在这里插入图片描述

使用mvnd打包,clean后

在这里插入图片描述
第二次打包,未clean。提升了一倍

在这里插入图片描述

相关文章:

  • 【通用定时器TIM2 TIM3 TIM4 TIM5】
  • 大端小端以及判别方式
  • java集合篇(三) ---- Collection 接口
  • LINE 接入说明
  • 学了软件测试后可以做哪些工作
  • Linux系统下安装RocketMQ5.3
  • Blazor Web Assembly - 使用Power Automate Desktop来跟踪一下Blazor页面的内存使用情况
  • 【win10神州网信政府版开启远程桌面服务mstsc 】
  • GO 1.25
  • 什么是NIST CSF合规?ManageEngine卓豪合规指南!
  • linux用反汇编分析访问空指针问题
  • Android学习之Provider
  • linux 黑马 第1-2章
  • 北航自由指令驱动的多模态导航最新研究:OctoNav:开启通用智能体具身导航
  • Python训练营---DAY53
  • yum查看历史操作
  • PDM网络图上的ES、EF、LS、LF是干嘛的怎么计算下一个节点的数值
  • C++中的零拷贝技术
  • 2.线性表的链式存储-链表
  • 掌握产品功能结构图,优化项目开发流程
  • 网站开发专业有哪些/深圳百度网站排名优化
  • 酒店如何做网站/营销网站推荐
  • 网页微信版二维码过期怎么办/网站免费网站免费优化优化
  • 河南安阳紧急通知/seo公司外包
  • 甘肃城乡建设局网站/买友情链接
  • 做一手房开什么网站比较好呢/搜索引擎优化期末考试答案