JRebel is a plug-in for the Java Virtual Machine (JVM) that enables instant reloading of changes made to a Java class file.
JRebel is a JVM plugin that makes it possible for Java developers to instantly see any code change made to an app without redeploying. JRebel lets you see code changes instantly, versioning classes and resources individually and updating one at a time instead of as a lump application redeploy.1
JRebel is an alternative solution to updating classes which 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. JRebel imposes a performance overhead on the application and should not be used in production or performance tests. It is meant to be a development tool only.[2]
JRebel is Java-based and usable on any operating system that supports Java. JRebel is IDE-agnostic and designed for integration with various Java EE standards and Java application servers.[4] Although JRebel is subscription-based commercial software, it is freely available to open source software projects and developers using the Scala programming language.
References