【Galois工具开发之路】给你的JVM安装一个插件~

DCEVM是一个用于JavaHotspot的开源插件,允许在运行时修改类文件,包括增加、删除类属性和方法。Galois是SpringBoot项目的热部署工具,依赖于DCEVM。用户需要根据JDK版本匹配合适的DCEVM,如JDK1.8.0_211需降级到1.8.0_181才能使用DCEVM。安装DCEVM后,通过java-version可验证安装是否成功。
摘要由CSDN通过智能技术生成

什么是DCEVM

Dcevm(DynamicCode Evolution Virtual Machine)是Java Hostspot的一个扩展插件,属于开源性工具,非JDK官方提供,它允许你在运行环境下修改加载的类文件。当前虚拟机只允许修改方法体(Method,Body),而Decvm可以增加、删除类属性、方法,甚至改变一个类的父类。

Galois是一个开源的SpringBoot项目热部署工具,提供对SpringBoot,Mybatis等三方框架的热部署支持。使用Galois需要您的JDK安装DCEVM扩展,顾名思义,可以实现增删改方法甚至是属性的热部署实现。

下载DCEVM

官方Github地址:https://github.com/dcevm/dcevm
官方Release下载地址:https://github.com/dcevm/dcevm/releases
在这里插入图片描述

以上是DCEVM的官方仓库地址,然而却不一定适配你的JDK版本,如果有JDK8较新的版本或以上,可以到以下地址下载

楼主当前使用 JDK 1.8.0_211 版本,原本是需要下载以下DCEVM版本。但是吧,目前Window系统的包需要自己下载源码编译,流程较为复杂,因此只能反向升级,我自己委屈求全,把JDK降到 1.8.0-181版本,这样就能用上了,DCEVM严格限制JDK版本的。
推荐到Oracle官网下载JDK https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html
在这里插入图片描述

https://github.com/TravaOpenJDK/trava-jdk-8-dcevm/releases

在这里插入图片描述

安装DCEVM

  • 下载jar包,通过java的jar命令启动,如下。切记,执行该命令的CMD或PowerShell窗口,需要使用管理员权限打开
java -jar .\DCEVM-8u181-installer-build2.jar
  • 在弹出来的界面中,选择你的JDK,进行修补
    • 修补过程中,所有java进程实例都要关闭
    • 达到效果如下【已替换DCEVM,且能正常显示DCEVM版本号,如果显示could not get decversion 则表示安装失败】
  • 验证安装成功,可以在控制台窗口执行 java -version,这时候就会输出带有** Dynamic Code Evolution**字样的java版本说明了,如下图所示
    在这里插入图片描述

问题记录

  • 版本说明
    • 官方仓库最高支持JDK 1.8.0-181,更高版本需要到文中另一个github仓库找jar包,linux和macos有直接编译的,window则需要自己编译源码,目前【2023-02-20】是这样
    • DCEVM严格要求版本一一对应,基本没有高版本兼容低版本的说法,如果是JDK8-181,则就要下载181的jar包

Galois热部署工具

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

newcih

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值