0%

使用maven-mvnd

Apache 推出了maven-mvnd,这是一个借鉴了GradleTakari相关技术的项目,可以加速项目的构建和打包,详细的介绍可以看github的官方文档。

安装

具体可以参考官方安装文档安装文档
MacOS 下通过 brew 安装

1
2
3
4
5
6
7
8
9
10
brew install mvndaemon/homebrew-mvnd/mvnd
#验证
nvmd -v
mvnd native client 0.7.1-darwin-amd64 (97c587c11383a67b5bd0ff8388bd94c694b91c1e)
Terminal: org.jline.terminal.impl.PosixSysTerminal with pty org.jline.terminal.impl.jansi.osx.OsXNativePty
Apache Maven 3.8.3 (ff8e977a158738155dc465c6a97ffaf31982d739)
Maven home: /usr/local/Cellar/mvnd/0.7.1/libexec/mvn
Java version: 1.8.0_275, vendor: AdoptOpenJDK, runtime: /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "mac os x", version: "10.16", arch: "x86_64", family: "mac"

速度对比

使用指定的setting.xml 文件,如果不指定使用默认的,根据自己的情况决定是否指定

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#项目目录下执行
mvnd clean package -Dmaven.test.skip=true --settings /Users/xxx/apache-maven-3.6.1/conf/settings.xml

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.385 s (Wall Clock)
[INFO] Finished at: 2021-12-29T16:53:20+08:00
[INFO] ------------------------------------------------------------------------

mvn clean package -Dmaven.test.skip=true --settings /Users/xxx/apache-maven-3.6.1/conf/settings.xml
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5.993 s
[INFO] Finished at: 2021-12-29T16:52:40+08:00
[INFO] ------------------------------------------------------------------------


多次测试,可以看到上面的时间确实有缩短。

总结

通过使用maven-nvmd,可以看到,确实可以节省一定的打包时间,如果构建和打包的项目耗时较长,可以试用一下,节省等待时间