湖南手机版建站系统信息,北京建设部网站官网,公司主页网站开发,做淘宝站外推广网站maven 构建增量包这是2020年#xff0c;如果您要开始任何新的基于Java的项目#xff0c;那么gradle应该是第一选择#xff0c;但是由于某些原因#xff0c;如果您仍然对Maven感兴趣#xff0c;那么您可能会发现这篇文章很有用。 Maven Java / scala编译器插件对增量编译提… maven 构建增量包 这是2020年如果您要开始任何新的基于Java的项目那么gradle应该是第一选择但是由于某些原因如果您仍然对Maven感兴趣那么您可能会发现这篇文章很有用。 Maven Java / scala编译器插件对增量编译提供了不错的支持但它无法处理一些极端情况例如 从源文件夹中删除文件时触发编译 。 不更改代码时跳过单元测试。 大多数情况下只是为了处理已删除文件的情况 “ mvn全新安装” 这意味着将遵守完整的代码并执行单元测试。 Scala代码的编译很慢如果项目包含运行缓慢的测试如启动Webserverspark上下文IO等则情况会变得更糟。 在许多情况下等待时间可能是几分钟。 即使代码未更改我也没有考虑浪费的CPU周期来运行测试。 作为一个实验我从Gradle中吸取了一些想法并编写了附加的Maven插件该插件可以解决上述问题 1.更改代码并触发完整构建时清理目标位置。 2.在不更改代码的情况下跳过单元测试执行。 这两个功能都可以帮助大大减少编译时间因为在大多数情况下只有很少的模块被更改并且可以使用以前的生成输出。 您可以通过启用此插件来快速构建。 如何使用插件 该插件是在预清理阶段添加的将以下条目添加到pom.xml并使用“ mvn pre-clean install” plugingroupIdmavenplugin/groupIdartifactIdcompilerplugin/artifactIdversion1.0-SNAPSHOT/versionexecutionsexecutionidpre-clean/idphasepre-clean/phasegoalsgoalinc/goal/goals/execution/executions /plugin 插件代码请 compilerplugin GitHub库 使用插件的沙箱代码可用 编译器 plugintest github仓库 结论 始终收集有关构建的度量标准例如编译所需的时间测试所花费的时间包大小依赖项等。一旦开始测量您将注意到构建的速度很慢并且还需要与代码相同的爱好。 快速构建是实现连续交付的第一步。 翻译自: https://www.javacodegeeks.com/2020/03/incremental-build-with-maven.htmlmaven 构建增量包