JavaRebel
From Wikipedia, the free encyclopedia
JavaRebel | |
---|---|
Developed by | ZeroTurnaround |
Latest release | 1.1.1 / May, 2008 |
OS | Cross-platform |
Genre | Development aids |
License | Proprietary, 149$ |
Website | www.zeroturnaround.com |
Starting from version 1.4 Java Virtual Machine included a hot swapping feature that allowed developers to update the code on-the-fly during debugging. However hot swapping was limited to updating method bodies only, and trying to add methods and fields to classes would not succeed. Since Java compiler generates synthetic fields and methods for features like class literals and inner classes the feature was even less useful than could be expected.
JavaRebel is an alternative solution to updating classes developed by ZeroTurnaround. It is a different approach and does not require a debugging session to be started. Instead it monitors the file system for changes and updates the classes in-memory. This means that only classes compiled to ".class" files will be updated and changes to classes in JAR files will be ignored. JavaRebel imposes a considerable performance overhead on the application and should never be used in production or performance tests. It is meant to be a development tool only.