亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java高性能新一代構(gòu)建工具Maven-mvnd(實踐可行版)

 更新時間:2023年06月19日 11:05:02   作者:程序員兔哥  
這篇文章主要介紹了Java高性能新一代構(gòu)建工具Maven-mvnd(實踐可行版),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

Maven-mvnd介紹

Maven 的優(yōu)點是穩(wěn)定可靠,在絕大多數(shù)的項目上工作良好,社區(qū)生態(tài)很完善,幾乎所有的 Java 開發(fā)者都在用。Maven 的缺點是,對于大一點的項目來說,構(gòu)建太慢了。有時候只能在服務(wù)器端完成構(gòu)建 ,心酸呀。

Gradle 的優(yōu)點是足夠的靈活,構(gòu)建速度也會更快一點,因為使用了后臺進程和緩存機制。Gradle 的缺點是版本迭代速度太快,社區(qū)跟不上,對于初學者來說,還是有一定的學習曲線。

所有是否有一種能快速構(gòu)建Java項目的工具時,今天重點推薦maven-mvnd,是Apache Maven團隊借鑒了Gradle和Takari的優(yōu)點,衍生出來的更快的構(gòu)建工具,maven的強化版,解決Maven構(gòu)建慢的問題,又不需要重新學習,懂Maven你就能駕馭Maven-mvnd。

maven-mvnd 特性:

  • 嵌入 Maven (所以不需要單獨安裝 Maven);maven 過渡到 maven-mvnd的過程中實現(xiàn) 無縫切換!所以不需要再安裝maven或進行復(fù)雜的配置更改。
  • 實際的構(gòu)建發(fā)生在一個長期存在的后臺進程中,也就是守護進程。如果沒有為構(gòu)建請求服務(wù)的空閑守護進程,則可以并行產(chǎn)生多個守護進程。
  • 一個守護進程實例可以處理來自 mvnd 客戶機的多個連續(xù)請求。
  • 使用 GraalVM 構(gòu)建的本地可執(zhí)行文件。與傳統(tǒng)的 JVM 相比,它啟動更快,使用的內(nèi)存更少。

這種架構(gòu)帶來的優(yōu)勢有:

  • 運行實際構(gòu)建的 JVM 不需要為每個構(gòu)建重新啟動,節(jié)省時間。
  • JVM 中的實時(JIT)編譯器生成的本機代碼也保留了下來。與 Maven 相比,JIT 編譯花費的時間更少。在重復(fù)構(gòu)建過程中,JIT 優(yōu)化的代碼可以立即使用。這不僅適用于來自 Maven 插件和 Maven Core 的代碼,也適用于來自 JDK 本身的所有代碼。

使用步驟

下載

https://github.com/mvndaemon/mvnd/releases

安裝

直接解壓。然后配置環(huán)境變量:

  • JAVA_HOME
  • MAVEN_HOME
  • MAVEN_MVND_HOME

將 bin 目錄添加到 PATH,注意前提條件JAVA_HOME是存在,如果沒有配置JAVA_HOME

測試

mvnd -v

使用

在使用上和Maven一樣,參數(shù)也一致。

Maven 使用mvn clean package;使用Maven-mvnd 只需要變成mvnd clean package即可,其他同理。

配置修改

為了最小程度的兼容原來的Maven,可以使用原來的setting.xml

打開 Maven-mvnd 安裝目錄下 的/conf/mvnd.properties 文件,在文件最后一行,修改如下:

如果沒有配置JAVA_HOME也可以指定Java JDK路徑:

maven.settings=F:/javaee/apache-maven-3.6.3/conf/settings.xml

打包對比

# maven 打包命令
mvn clean package  '-Dmaven.test.skip=true'
# mvnd 打包命令
mvnd clean package  '-Dmaven.test.skip=true'

子項目越多,相對速度更快的趨勢。

總的來說,如果項目模塊很多,可以嘗試使用 mvnd 進行輔助打包,比如 測試、生產(chǎn),可以節(jié)省很多時間;

到此這篇關(guān)于新一代Java高性能構(gòu)建工具Maven-mvnd【實踐可行版】的文章就介紹到這了,更多相關(guān)Java構(gòu)建工具Maven-mvnd內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mybatis-plus?分頁類型轉(zhuǎn)換工具類

    mybatis-plus?分頁類型轉(zhuǎn)換工具類

    用mybatis-plus?的分頁對象的時候,因為用mybatis-puls?查詢出來的分頁對象的records里的泛型是實體,有時候需要將實體轉(zhuǎn)換為前端展示的對象,所有寫了一個分頁數(shù)據(jù)的類型轉(zhuǎn)換工具,解決這個問題,對mybatis-plus?分頁工具類相關(guān)知識感興趣的朋友一起看看吧
    2022-03-03
  • Java后臺開發(fā)之表單提交之前驗證

    Java后臺開發(fā)之表單提交之前驗證

    這篇文章主要介紹了Java后臺開發(fā)之表單提交之前驗證的實現(xiàn)代碼,非常不錯具有參考借鑒價值,需要的朋友參考下吧
    2017-02-02
  • Java線程的并發(fā)工具類實現(xiàn)原理解析

    Java線程的并發(fā)工具類實現(xiàn)原理解析

    本文給大家講解Java線程的并發(fā)工具類的一些知識,通過適用場景分析大數(shù)據(jù)量統(tǒng)計類任務(wù)的實現(xiàn)原理和封裝,多個示例代碼講解的非常詳細,對java線程并發(fā)工具類相關(guān)知識感興趣的朋友一起學習下吧
    2021-06-06
  • Mapper.xml中查詢返回帶有List屬性的實體類結(jié)果問題

    Mapper.xml中查詢返回帶有List屬性的實體類結(jié)果問題

    這篇文章主要介紹了Mapper.xml中查詢返回帶有List屬性的實體類結(jié)果問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Java常用的一些多媒體文件基本操作方法簡介

    Java常用的一些多媒體文件基本操作方法簡介

    這篇文章主要介紹了Java常用的一些多媒體文件基本操作方法,包括對音頻視頻以及幻燈片的播放,需要的朋友可以參考下
    2015-10-10
  • FreeMarker如何調(diào)用Java靜態(tài)方法及靜態(tài)變量方法

    FreeMarker如何調(diào)用Java靜態(tài)方法及靜態(tài)變量方法

    這篇文章主要介紹了FreeMarker如何調(diào)用Java靜態(tài)方法及靜態(tài)變量方法,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Spring Security和自定義filter的沖突導致多執(zhí)行的解決方案

    Spring Security和自定義filter的沖突導致多執(zhí)行的解決方案

    這篇文章主要介紹了Spring Security和自定義filter的沖突導致多執(zhí)行的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Springboot中如何自定義監(jiān)聽器

    Springboot中如何自定義監(jiān)聽器

    這篇文章主要介紹了Springboot中自定義監(jiān)聽器,自定義事件需要繼承ApplicationEvent類,并添加一個構(gòu)造函數(shù),用于接收事件源對象,本文通過示例代碼給大家介紹的非常詳細,感興趣的朋友一起看看吧
    2024-07-07
  • 利用openoffice+jodconverter-code-3.0-bate4實現(xiàn)ppt轉(zhuǎn)圖片

    利用openoffice+jodconverter-code-3.0-bate4實現(xiàn)ppt轉(zhuǎn)圖片

    這篇文章主要為大家詳細介紹了利用openoffice+jodconverter-code-3.0-bate4實現(xiàn)ppt轉(zhuǎn)圖片,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • Springboot POI導出Excel(瀏覽器)

    Springboot POI導出Excel(瀏覽器)

    這篇文章主要為大家詳細介紹了Springboot POI導出Excel,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-05-05

最新評論