mvnd 是什么
mvnd 是 apache/maven 的子项目 maven-mvnd,并不是一个全新的构建工具而是对 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] ------------------------------------------------------------------------
如何使用
-
① 下载后解压安装:Releases · apache/maven-mvnd · GitHub
-
② 配置 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