实测 || maven新插件构建性能提升 300%
JAVA架构日记
共 1649字,需浏览 4分钟
·
2021-12-25 10:34
mvnd 是什么
mvnd 是 apache/maven 的子项目 maven-mvnd[1],并不是一个全新的构建工具而是对 maven 的一个扩展工具。
mvnd 基于 Gradle 和 Takari 构建,目标是让 maven 更快的构建。
Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的项目自动化建构工具。Gradle 构建脚本使用的是 Groovy 或 Kotlin 的特定领域语言来编写的,而不是传统的 XML。
Takari 是 maven-wrapper 核心,大部分的开源项目都是提供 warpper 方便用户不安装 maven 的前提下快速构建。
性能提升
笔者基于 pig (多 module maven)项目进行构建。如下方说明:300%的性能提升。
芯片:Apple M1
核总数:8(4性能和4效率)
内存:16 GB
mvnd clean install
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 16.334 s (Wall Clock)
[INFO] Finished at: 2021-12-24T09:08:57+08:00
[INFO] ------------------------------------------------------------------------
mvn clean install
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 43.119 s
[INFO] Finished at: 2021-12-24T08:41:10+08:00
[INFO] ------------------------------------------------------------------------
如何使用
① 下载后解压安装:https://github.com/mvndaemon/mvnd/releases
② 配置 mvnd 环境变量
以上两步就完成了 mvnd 的安装,默认情况下已经内置 maven 无需再下载 maven
从 maven 配置迁移
配置 conf/mvnd.properties
maven.settings 配置指向原有 maven 配置文件即可
#
# The location of the maven settings file. The client normally uses default settings in {@code ~/.m2/settings.xml}.
maven.settings=/Users/lengleng/env/apache-maven-3.8.1/conf/settings.xml
参考资料
maven-mvnd: https://github.com/apache/maven-mvnd
评论