JRebel Class Reload Comparison Matrix

JRebel 6 JRebel 5 JVM Hot Swap
Changes to method bodies
Adding/removing Methods
Adding/removing constructors
Adding/removing fields
Adding/removing classes
Adding/removing annotations
Changing static field value
Adding/removing enum values
Modifying interfaces
Replacing superclass
Adding/removing implemented interfaces
Initializes new instance fields

Skip the Build

Compile in the IDE

With JRebel you avoid having to rebuild the entire application to reload code changes. This is a huge time saver.

Instead of running your full build process, simply use the compiler built into your IDE and JRebel will reload the code into the JVM.

For some users, this is as simple as saving the Java class, others just hit compile.

Maven and Gradle

JRebel also supports reloading code inside of modules and build artifacts, as long as you have the source code.

Classes and resources are read directly from your workspace, stop rebuilding your JARs, EARs, and WARs to see code changes.

There are plugins for Maven and Gradle that configure your modules for JRebel for you.

Remote and virtual server support


With JRebel you can develop on virtual machines, remote servers and cloud environments as fast and easily as you do locally.

JRebel sends the changed classes and resources to the remote server, reloading them instantly. This avoids the need to repackage your application, transfer it to the remote server, and then go through the entire restart/redeploy process on the remote server.

Supports all virtualization technologies including VMware, VirtualBox, Vagrant and Docker.

Work with any Java remote server in your development environment or in the cloud.

Some Overhead Expected

< 50 % startup-time overhead

JRebel will instrument all your application classes at load-time so somewhat longer startup time is to be expected. You will make up for it by restarting way less.

< 10 % CPU overhead

To allow methods to be added to classes, JRebel introduces some indirection on method calls that causes minor overhead.

< 2x PermGen overhead

Classes are bigger with JRebel, so it’s a good idea to double your PermGen setting, and if you have nothing at the moment add -XX:PermGen=128m to your JVM command line.

Yep, JRebel rocks! Stop redeploying, save time & money.

Try JRebel