HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

JavaRebel:在 JVM 中动态装载类

  • 2007-10-26
  • 本文字数:479 字

    阅读完需:约 2 分钟

JavaRebel 给 Java 带来了 Ruby 和 PHP 风格的动态重新装载类特性。虽然现在还有些局限性,但它可以显著地增加开发速度。

JavaRebel 允许一个应用程序(独立的或运行在应用服务器上的应用)重新装载在运行过程中(on the fly)发生的大多数类变化,包括增加或删除方法和域。

使用字节码修正和一点“妖术”,JavaRebel 扩展了 JVM,使其具备在运行中重新装载对类的几乎任意修改的能力。包括增加和删除方法和域,唯一禁止重新加载的改变是“extends”和“implements”语句。因此,在应用和服务器所保持的所有现存对象实例可以继续运行,代码改变会立刻在应用程序中表现出来。

已发现的一些局限性包括:

  • getClass().getPackage() 返回为 null。Zeroturnaround 已经知道该问题并正在解决。
  • 不支持自定义的类装载器
  • 现在没有给资源重新装载时的执行动作提供勾子方法(hook)(例如刷新一个在 Spring 应用依赖图表中的对象)

尽管有这些限制,反馈普遍给于肯定的。Zeroturnaround 照常制作可用的每夜构建并计划不久发布一版SDK 以帮助解决一些问题(如自定义类装载器的限制问题)。

查看英文原文: JavaRebel: Dynamic Classloading in the JVM

2007-10-26 07:001233
用户头像

发布了 150 篇内容, 共 45.6 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

专业强大的扫描仪软件:VueScan Pro中文激活版

胖墩儿不胖y

Mac软件 扫描工具 扫描仪

测试开发 | 探究人工智能的基石:强化学习的奇妙世界

测吧(北京)科技有限公司

测试

交易所开发:中心化加密货币交易所发展的关键考虑因素实现数字交易

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

IPQ6018 and IPQ6000 series: highlighting differences and superior advantages

wallysSK

万德高科携手航天科技AIRIOT打造智慧能碳管理平台, 助力碳达峰碳中和

AIRIOT

数字化转型 智慧系统 能碳管理

测试开发 | 人工智能目标检测

测吧(北京)科技有限公司

测试

测试开发 | 人工智能的决策智慧:马尔可夫决策过程(MDP)

测吧(北京)科技有限公司

测试

Golang实现JAVA虚拟机-运行时数据区

EquatorCoco

Java 数据库 JVM 数据

云安全资源管理定义以及实现方法

行云管家

云计算 云服务 云安全 云资源

制造业数字化转型的核心不止是技术

万界星空科技

数字化转型 工业互联网 mes 万界星空科技mes

KubeWharf:推动云原生技术发展的未来之路

Miracle.

#云原生 #技术人的2023总结 KubeWharf

iZotope RX 10 for mac(音频修复和增强软件) 10.4.2完整激活版

mac

苹果mac Windows软件 iZotope RX 10 音频修复软件

企业财务团队如何进行转型升级?

智达方通

全面预算管理 财务团队 财务转型

深入云原生—基于KubeWharf深度剖析-以公司实际应用场景为例深度解读

申公豹

KubeWharf

实时数据获取:抖音API在电商中的应用与影响

Noah

深入理解云原生基础:Docker和Kubernetes的核心概念与应用

Miracle.

#云原生 #技术人的2023总结

企业门户平台全功能解析:从界面到集成,一站式管理与整合

天津汇柏科技有限公司

企业 统一门户

揭秘抖音视频详情API:电商行业的制胜法宝与实时数据获取的奥秘

Noah

多功能项目流程管理软件:OmniPlan Pro 4密钥中文版

mac大玩家j

项目管理软件 Mac软件 Mac项目流程管理

如何鉴别LED电子显示屏好坏

Dylan

质量 评估 电子 LED显示屏

云图说丨初识华为云边缘安全——为加速域名保驾护航

华为云开发者联盟

云计算 后端 华为云 华为云开发者联盟 华为云云图说

QA团队基于DataLeap开放平台能力的数据测试实践

字节跳动数据平台

大数据 测试 QA 数据研发 数据管控

Wireshark网络工具

小齐写代码

测试开发 | 探索人工智能图像生成的奇妙世界

测吧(北京)科技有限公司

测试

MES系统怎么实现车间管理中的生产计划和排产计划

万界星空科技

工业互联网 生产管理系统 mes 万界星空科技 万界星空科技mes

测试开发 | 深度解析人工智能特征提取

测吧(北京)科技有限公司

测试

FPGA与DSP在通信算法实现中的应用与区别

计算机 DSP FPGA

数据库的下一场革命:S3 延迟已降至原先的 10%,云数据库架构该进化了

小猿姐

数据库 云计算 Kubernetes

JavaRebel:在JVM中动态装载类_Java_Rob Thornton_InfoQ精选文章