来更快的Maven了,我的天,速度提升了8倍!(1)

简介: 更快的Maven来了,我的天,速度提升了8倍!(1)

周末被 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 具有以下优点:


  1. 用于运行构建的 JVM 不需要每次构建都重新启动。


  1. 持有 Maven 插件类的类加载器在多个构建中会被缓存。因此,插件 jar 文件只被读取和解析一次。(快照版本的 Maven 插件不会被缓存)


  1. 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 资源包,如下图所示:


微信图片_20220121000729.jpg


下载完成之后,解压到本地的某个目录,如下图所示:


微信图片_20220121000821.jpg

相关文章
|
传感器 调度 开发者
【Freertos基础入门】freertos任务的优先级
【Freertos基础入门】freertos任务的优先级
1617 0
|
6月前
|
人工智能 JavaScript 开发工具
MCP详解:背景、架构与应用
模型上下文协议(MCP)是由Anthropic提出的开源标准,旨在解决大语言模型与外部数据源和工具集成的难题。作为AI领域的“USB-C接口”,MCP通过标准化、双向通信通道连接模型与外部服务,支持资源访问、工具调用及提示模板交互。其架构基于客户端-服务器模型,提供Python、TypeScript等多语言SDK,方便开发者快速构建服务。MCP已广泛应用于文件系统、数据库、网页浏览等领域,并被阿里云百炼平台引入,助力快速搭建智能助手。未来,MCP有望成为连接大模型与现实世界的通用标准,推动AI生态繁荣发展。
5845 66
|
机器学习/深度学习 存储 PyTorch
PyTorch自定义学习率调度器实现指南
本文将详细介绍如何通过扩展PyTorch的 ``` LRScheduler ``` 类来实现一个具有预热阶段的余弦衰减调度器。我们将分五个关键步骤来完成这个过程。
678 2
|
自然语言处理 并行计算 算法
cp-sat求解器介绍及使用案例
cp-sat求解器介绍及使用案例 更多文章欢迎关注我的微信公众号:Python学习杂记
2598 1
|
API Python
​不用SMTP实现联系表单提交后发送邮件到指定邮箱
构建网站时,联系表单可通过邮件API(如SendGrid、Mailgun、Amazon SES)或第三方自动化服务(Zapier、Integromat)无需SMTP发送邮件。使用API服务,如SendGrid的Python示例,可直接集成到表单提交流程。第三方自动化服务允许表单提交触发邮件发送。后端脚本,如PHPMailer,也可用于邮件发送。这些方法简化了邮件发送并提高了效率。AokSend提供触发式接口和独立IP的高触达发信服务。
|
Java Apache Maven
mvnd 安装和配置
mvnd 安装和配置
680 0
mvnd 安装和配置
|
SQL Oracle 关系型数据库
Oracle 锁表查询及解锁kill进程
1. 查看被锁定的表 SELECT OBJECT_NAME, MACHINE, S.SID, S.
3282 0
|
Linux Shell 数据安全/隐私保护
Linux命令(21)之usermod
Linux命令(21)之usermod
291 0
|
Ubuntu Java Apache
Maven官宣:干掉Maven和Gradle!推出更强更快更牛逼的新一代构建工具,炸裂!
相信作为Java开发者的你早已经受够了maven的编译缓慢,但是又由于历史包袱、使用习惯等问题暂时切换不了其他更快的构建工具,这里笔者将给你介绍一款更快的maven——maven-mvnd。
Maven官宣:干掉Maven和Gradle!推出更强更快更牛逼的新一代构建工具,炸裂!
|
存储 安全 Java
JDK1.7 HashMap并发安全问题
虽然我们现在开发中使用的JDK一般都是JDK8了但是最近还是有很多同学在面试的过程中遇到了JDK1.7的一些问题那么接下来我们就带着大家一起来聊一下HashMap在1.7中的各种问题。
266 0
JDK1.7 HashMap并发安全问题