相关文章介绍可以阅读这篇了解下:https://developer.aliyun.com/article/988484
- 仓库:https://github.com/adoptium/emt4j
总的来说,EMT4J 就是给开发者升级JDK版本时使用的检测工具,方便排错升级后的一些新特性和方法变更等。
下面就介绍下怎么使用,目前 v0.8.0 版本是支持 Windows 、Linux 环境使用的

下面就介绍下在 Windows 下 EMT4J 工具的使用,Linux环境使用是类似的
如:项目用到的是Java8,现在想升级到到 Java 17,需要做哪些调整?通过 EMT4J 工具对项目所用到的所有插件和三方包依赖进行兼容性扫描,把一些常用的升级问题给汇总成一个报告,提前检测下升级带来的改动点和注意事项等。
本地需要提前下载好 Java 17,有关 openJDK 的下载安装可以访问我之前写的这篇文章:openJDK下载
安装好 JDK 17后,不用配置环境变量,使用 EMT4J 工具的使用不需要

- 这里拿若依项目来检测,在项目目录下创建 vmoptions 文件夹,用于配置不同服务的jvm参数

- 如:现在需要给 ruoyi-framework 使用工具检测,就需要在 vmoptions 文件夹中创建同名的文件夹

- 文件夹下创建对应的 cgf 文件名

- ruoyi-framework.cfg 写入:
-Xms: 设置 初始 堆大小。
-Xms512m (初始堆 512MB)
-Xmx: 设置 最大 堆大小。
-Xmx2048m (最大堆 2048MB/2GB)
参考:Java 命令行参数详解:系统属性、JVM 选项与应用配置
-Xms1024m -Xmx2048m
- 执行EMT4J命令
-f 8:表示从JDK 8开始
-t 17:表示要升级到JDK 17
-j D:\jdk-17:指定目标JDK 17的安装路径
D:\jdk-17 E:\xdr-project\RuoYi-Vue:指定应用包和配置文件的根目录
cd E:\emt4j\emt4j\bin
E:\emt4j-0.8.0\bin>analysis.bat -f 8 -t 17 -j D:\jdk-17 E:\xdr-project\RuoYi-Vue
- 生成报告后



- 大多都是一些第三方包或者Tomcat漏洞之类的,或者弃用的属性方法等
- 如果是多个服务需要使用工具检测,就同理按照上面的方式在 vmoptions 中新增对应的服务名文件夹和 cfg 文件
- 当然也可以使用Maven插件的方式去检测,仓库中也有对应的使用说明