Hot code replace (HCR)

Hot Code Replace (HCR) 是一种调试技术,允许在运行时替换类文件而无需重启虚拟机。此技术适用于实验性开发及迭代试错编程,但仅在类签名不变的情况下有效。例如,可以在运行过程中更改方法体,但不能添加或删除现有类的字段。

https://wiki.eclipse.org/FAQ_What_is_hot_code_replace%3F

https://zhidao.baidu.com/question/195505558.html

http://help.eclipse.org/neon/nftopic/org.eclipse.jdt.doc.isv/reference/api/org/eclipse/jdt/debug/core/IJavaHotCodeReplaceListener.html

Hot code replace (HCR) is a debugging technique whereby the Eclipse Java debugger transmits new class files over the debugging channel to another JVM. In the case of Eclipse development, this also applies to the VM that runs the runtime workbench. The idea is that you can start a debugging session on a given runtime workbench and change a Java file in your development workbench, and the debugger will replace the code in the receiving VM while it is running. No restart is required, hence the reference to "hot".

HCR has been specifically added as a standard technique to Java to facilitate experimental development and to foster iterative trial-and-error coding. HCR only works when the class signature does not change; you cannot remove or add fields to existing classes, for instance. However, HCR can be used to change the body of a method. HCR is reliably implemented only on 1.4.1 VMs and later, or using any version of the IBM J9 VM. J9 is available in IBM products such as Websphere Studio Device Developer™.

If HCR does not work for you even in a simple Java application and you have confirmed that you are running the application on a supported VM (taking note that the JVM that runs Eclipse may not be the same as the JVM that is running your Java application), you may not have automatic building turned on. Make sure that 'Project > Build Automatically' is checked.

转载于:https://www.cnblogs.com/rgqancy/p/6992888.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值