成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

更快的Maven來了,我的天,速度提升了8倍!

開發 開發工具
本文介紹了 mvnd,一個內置了 maven 但執行效率遠比 maven 快很多的工具。它的上手難度很低,對于用戶來說,只是將之前 maven 命令的開頭從“mvn”換成了“mvnd”而已。

[[442136]]

本文轉載自微信公眾號「Java中文社群」,作者磊哥。轉載本文請聯系Java中文社群公眾號。

周末被 maven-mvnd 刷屏了,于是我也下載了一個 mvnd 體驗了一把。雖然測試的數據都是基于我本地項目,不具備普適性和權威性,但也足以說明問題。它的測試結果遠遠超出我的預期,下面一起來看。

什么是 mvnd?

mvnd 是 Maven Daemon 的縮寫 ,翻譯成中文就是 Maven 守護進程。

mvnd 是 apache/maven 的一個子項目,它并不是一個全新的構建工具,而是對 maven 的擴展。它內置了 maven,其實現原理是構建了一個或者多個 maven 守護進程來執行構建服務。

mvnd 概述

1.mvnd 的目標是使用 Gradle 和 Takari 所知的技術提供更快的 Maven 構建。

Gradle 是一個基于 Apache Ant 和 Apache Maven 概念的項目自動化建構工具。Gradle 構建腳本使用的是 Groovy 或 Kotlin 的特定領域語言來編寫的,而不是傳統的 XML。Gradle 最大的優勢就是比傳統的 Maven 構建速度更快。Takari 是 maven-wrapper 核心,大部分的開源項目都是提供 warpper 方便用戶不安裝 maven 的前提下快速構建項目的。

2.mvnd 內嵌了 Maven,所以不需要單獨安裝 Maven 了。

3.一個守護進程實例可以服務于來自 mvnd 客戶端的多個連續請求。

4.mvnd 客戶端使用 GraalVM 構建本地可執行文件,與啟動傳統 JVM 相比,它啟動得更快,占用的內存更少。

5.如果 mvnd 沒有空閑守護進程來服務一個構建請求,可以并行地生成多個守護進程。

mvnd 優點介紹

mvnd 具有以下優點:

用于運行構建的 JVM 不需要每次構建都重新啟動。

持有 Maven 插件類的類加載器在多個構建中會被緩存。因此,插件 jar 文件只被讀取和解析一次。(快照版本的 Maven 插件不會被緩存)

JVM 中即時(JIT)編譯器生成的本地代碼也被保留,與常規 Maven 相比,JIT 編譯所花費的時間更少。在重復構建期間,JIT 優化的代碼立即可用,這不僅適用于來自 Maven 插件和 Maven Core的代碼,也適用于所有來自 JDK 本身的代碼。

mvnd 安裝

mvnd 支持 Window、Linux、Macos,本文以 Windows 安裝為例。

1.下載并解壓 mvnd

下載地址:https://github.com/apache/maven-mvnd/releases選擇最新版的 Windows 資源包,如下圖所示:

下載完成之后,解壓到本地的某個目錄,如下圖所示:

2.配置環境變量

將 mvnd 解碼包的執行目錄 bin 配置到系統變量 path 中,操作步驟如下圖所示:

3.測試 mvnd 安裝

接下來打開命令行窗口,使用“mvnd -version”檢查一下 mvnd 是否正常安裝成功,如下圖所示:

如果打印了相關的版本信息就說明安裝成功了。

mvn VS mvnd 性能測試

接下來就是本文的重頭戲了,使用我本地的一個項目來測試一下 mvn 和 mvnd 的性能差距。

我的電腦配置如下:

1.mvn 性能測試

傳統的 maven 執行結果如下圖所示:

打包我本地的一個項目,跳過單元測試。

mvn 性能測試結果:1.312 秒。

2.mvnd 性能測試

mvnd 性能測試結果 0.154 秒。

總結

本文介紹了 mvnd,一個內置了 maven 但執行效率遠比 maven 快很多的工具。它的上手難度很低,對于用戶來說,只是將之前 maven 命令的開頭從“mvn”換成了“mvnd”而已。

mvnd 構建了一個或者多個 maven 守護進程,使用了全新的 VM 引擎,并添加了緩存及 JIT 優化,從而大大的提高了 maven 項目的構建速度,也讓我們看到了一個能與 Gradle 一較高下的希望,我會持續關注此項目,希望它發展的越來越好。 

參考資料:https://github.com/apache/maven-mvnd

 

責任編輯:武曉燕 來源: Java中文社群
相關推薦

2025-05-27 01:55:00

TypeScript開發者項目

2022-04-21 07:51:51

場景JavaSQL

2023-03-22 13:53:26

芯片英偉達

2024-07-17 08:25:44

2021-02-19 23:44:27

Windows 10Windows微軟

2024-10-29 08:21:05

2024-01-19 13:41:00

AI模型

2021-02-02 15:38:19

Disruptor緩存Java

2021-09-13 10:25:35

開發技能代碼

2024-06-12 08:08:08

2021-02-19 18:10:06

微軟WindowsWindows 10

2022-09-21 17:43:29

Kafka底層網絡

2017-05-10 16:09:12

MySQL數據庫查詢

2023-08-29 06:50:01

Javamaven

2022-09-09 09:33:14

支付寶代碼性能

2023-04-06 19:13:57

2025-01-14 12:00:00

Java開發代碼

2009-03-29 09:47:24

蘋果Iphone移動OS

2024-04-10 08:00:00

PostgresNoSQL

2017-05-11 11:30:43

MySQL查詢速度
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品日日做人人爱 | 先锋资源吧 | 国产成人免费网站 | 天天草av | 亚洲一区二区在线播放 | 中文字幕欧美日韩一区 | 四虎永久免费影院 | 国产亚洲欧美另类一区二区三区 | 久久日韩粉嫩一区二区三区 | 亚洲精品久久久久久久久久吃药 | 日韩精品一区二区三区在线观看 | 成人精品一区 | 中文字幕av亚洲精品一部二部 | 久久久久久国产一区二区三区 | 亚洲国产精品久久久久久 | 亚洲一区二区三区在线播放 | 国产精品久久久久久久久久尿 | 极品久久 | 欧美性一区二区三区 | 国产精品久久久久久久久久久新郎 | 午夜精品久久久久久久久久久久久 | 99精品视频免费观看 | 伊人热久久 | 欧美精品在线播放 | 国产精品久久久久久久久久久久久久 | 日本不卡免费新一二三区 | www.亚洲免费 | 欧美日韩国产一区二区三区不卡 | 中文字幕精品一区二区三区精品 | 91 在线 | www.99热.com| 欧美日韩在线电影 | 欧美激情欧美激情在线五月 | 成人精品久久日伦片大全免费 | 最近中文字幕免费 | 三级黄色网址 | 久久国产婷婷国产香蕉 | 国产免费观看视频 | 亚洲精品久久久久久首妖 | 91国产精品| 中文字幕加勒比 |