Using JavaRebel is extremely simple: Just pass an appropriate command when you invoke your Java Virtual Machine. It took me about 30 seconds to get it working in Eclipse. Once it's there, it's transparent--and useful. To test it, I launched an application, then, while the application was running, added in some additional output code to the event handler for a button. After a second or two, I received a notice in my console window that the relevant classes had been reloaded, and the button now executed its modified behavior. I can foresee this saving me a tremendous amount of debugging time. Even a few minutes a day saved re-launching apps adds up, over a year, to hours or even days of productivity, depending on re-deployment time after minor edits.
There are a few changes it can't handle--you can't change class hierarchy or implement new interfaces, for example, but it's unlikely you'd be making changes like that during a standard edit-compile-test cycle. There is also a risk factor; if the app you're working on is "live," and you are careless with your configuration, you could introduce new bugs into running code. However, that's a user error and hardly the fault of the program.
The trial version lasts for 30 days and prints a message in the console window when run. This should be long enough to determine if the utility provided is worth it.