Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "FAQ What is hot code replace?"

(Add a note about automatic build.)
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
Hot code replace (HCR) is a debugging technique whereby the Eclipse debugger transmits
+
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".
new class files over the debugging channel to another VM. 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™.
+
 
+
 
+
 
+
  
 +
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.
  
 
== See Also: ==
 
== See Also: ==
 
 
 
The WSDD Web site (http://ibm.com/software/wireless/wsdd/)
 
The WSDD Web site (http://ibm.com/software/wireless/wsdd/)
  
 
<hr><font size=-2>This FAQ was originally published in [http://www.eclipsefaq.org Official Eclipse 3.0 FAQs]. Copyright 2004, Pearson Education, Inc. All rights reserved. This text is made available here under the terms of the [http://www.eclipse.org/legal/epl-v10.html Eclipse Public License v1.0].</font>
 
<hr><font size=-2>This FAQ was originally published in [http://www.eclipsefaq.org Official Eclipse 3.0 FAQs]. Copyright 2004, Pearson Education, Inc. All rights reserved. This text is made available here under the terms of the [http://www.eclipse.org/legal/epl-v10.html Eclipse Public License v1.0].</font>

Latest revision as of 06:39, 16 October 2008

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&#153;.

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.

See Also:

The WSDD Web site (http://ibm.com/software/wireless/wsdd/)


This FAQ was originally published in Official Eclipse 3.0 FAQs. Copyright 2004, Pearson Education, Inc. All rights reserved. This text is made available here under the terms of the Eclipse Public License v1.0.

Copyright © Eclipse Foundation, Inc. All Rights Reserved.