10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

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:001576
用户头像

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

关注

评论

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

Lazada的算法本土化实践:让东南亚没有难投放的广告

科技新知

vue监听器

小恺

6月月更

模块四(千万级学生管理系统的考试试卷存储方案)

Geek_701557

俄航天局局长:外星生命或正在研究人类文明

Dylan

俄罗斯 外星人 航天局

Executor

急需上岸的小谢

6月月更

华为云Stack首席架构师:打造“称手”的数字化工具,答好政企IT数字化转型这道必选题

华为云开发者联盟

云计算 数字化转型 多云管理 华为云Stack

投稿开奖丨云服务器ECS征文活动(3月)大奖公布

阿里云弹性计算

DNS 云服务器 ECS DoH

如何方便的将小程序转换成APP

Geek_99967b

小程序 小程序容器

静态链接,静态分派,动态链接

北洋

android 6月月更

软件测试需要学习什么?好学吗?需要学多久?到底是报班好还是自学好?

伤心的辣条

程序员 程序人生 软件测试 自动化测试 Python自动化

在万家灯火阑珊处,重新认识平板电脑

脑极体

一文读懂当今AI圈大热的“MLOps”

澳鹏Appen

人工智能 机器学习 大数据 数据标注 运维开发

gRPC C++开发环境搭建

赖猫

c c++ gRPC

力扣每日一练之二分查找Day7

京与旧铺

后端 6月月更

想秀你就秀!环信MVP招募计划正式启动,诚邀您加入!

环信

IT 即时通讯 IM 技术分享

快速实现微信登录第三方小程序快捷方式

Geek_99967b

小程序 小程序转app

让你驱动力开机工作了,不是在待机状态。

叶小鍵

换掉bpmn-js,让前端更熟悉工作流业务

相续心

前端 流程图 workflow

用FinClip实现App小程序微信授权登录详解

Geek_99967b

小程序 小程序容器

SQL优化

工程师日月

6月月更

想学好软件测试,这些软件必不可少

伤心的辣条

Python 程序员 程序人生 软件测试 自动化测试

工业互联网生态建设加速,小程序容器技术跨端开发特性助力突围

Speedoooo

跨端开发 软件安全 降本增效 敏捷迭代 多端运行

剑指 Offer 58 - II. 左旋转字符串

未见花闻

6月月更

数据库每日一题---第11天:合作过至少三次的演员和导演

知心宝贝

数据库 前端 后端 6月月更

三星堆重大发现!信息量巨大

Dylan

三星堆 四川省 文物

信用卡业务愈卷愈烈,银行机构如何突围?

易观分析

信用卡业务

ConcurrentHashMap 源码分析-扩容

zarmnosaj

6月月更

看完就会,从抓包到接口测试的全过程解析

伤心的辣条

程序员 自动化测试 接口测试 测试开发 Python自动化

剑指offer系列——剑指 Offer 49. 丑数

未见花闻

6月月更

实时数仓实战

鲸品堂

数据 实时数仓

Notebook在复现数据科学研究成果中的丝滑使用

Baihai IDP

AI notebook 数据科学 科研成果

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