Imagine a bacon-wrapped Ferrari. Still not better than our free technical reports.
See all our reports

JRebel 2.2 “Easy Peasy” Released

It is our great pleasure to announce JRebel 2.2, the “Easy Peasy” release. In this release we have focused heavily on ease of installation, configuration and use. The main new feature is the semi-automatic installer and configuration wizard, that makes installing JRebel and configuring your application a snap. We have also included a configuration utility that supplements all those funky system properties with a centralized GUI configuration. For those who prefers the Zen of the Command Line we have compiled a comprehensive reference manual about all things JRebel included in the distribution.

We also invested heavily into making the JRebel IDE integration as seamless as possible. The new NetBeans plugin now supports debugging when the JRebel agent is enabled. The numerous updates to Eclipse and IntelliJ IDEA plugins allow you to run the application with JRebel effortlessly from inside the IDE.

Take a look at the full changelog, download now or check out the screenshots:

jrebel-config-wizard Picture 2 Picture 3

launch cartoon

  • James

    Hello,

    My first attempt at using the installer on Snow Leopard

    java -jar jrebel-setup.jar

    results in the following error

    Error executing /bin/chmod a+x /Applications/ZeroTurnaround/JRebel/bin/jrebel-config.sh

    That file is not present.

    Any ideas?

  • James

    Hello,

    My first attempt at using the installer on Snow Leopard

    java -jar jrebel-setup.jar

    results in the following error

    Error executing /bin/chmod a+x /Applications/ZeroTurnaround/JRebel/bin/jrebel-config.sh

    That file is not present.

    Any ideas?

  • Thierry-Dimitri Roy

    Got this stack trace under Windows Server 2008:
    could not create shortcut instance
    java.lang.Exception: unidentified problem initializing COM
    java.lang.UnsatisfiedLinkError: com.izforge.izpack.util.os.ShellLink.initializeCOM()I
    at com.izforge.izpack.util.os.ShellLink.initialize(ShellLink.java:520)
    at com.izforge.izpack.util.os.ShellLink.(ShellLink.java:374)
    at com.izforge.izpack.util.os.Win_Shortcut.initialize(Win_Shortcut.java:82)
    at com.izforge.izpack.panels.ShortcutPanel.panelActivate(ShortcutPanel.java:812)
    at com.izforge.izpack.installer.InstallerFrame.switchPanel(InstallerFrame.java:837)
    at com.izforge.izpack.installer.InstallerFrame.navigateNext(InstallerFrame.java:1449)
    at com.izforge.izpack.installer.InstallerFrame.navigateNext(InstallerFrame.java:1417)
    at com.izforge.izpack.installer.InstallerFrame$NavigationHandler.actionPerformed(InstallerFrame.java:1559)
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    at java.awt.Component.processMouseEvent(Unknown Source)
    at javax.swing.JComponent.processMouseEvent(Unknown Source)
    at java.awt.Component.processEvent(Unknown Source)
    at java.awt.Container.processEvent(Unknown Source)
    at java.awt.Component.dispatchEventImpl(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Window.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)
    java.lang.NullPointerException
    at com.izforge.izpack.util.os.Win_Shortcut.getProgramsFolder(Win_Shortcut.java:679)
    at com.izforge.izpack.panels.ShortcutPanel.getProgramsFolder(ShortcutPanel.java:915)
    at com.izforge.izpack.panels.ShortcutPanel.panelActivate(ShortcutPanel.java:826)
    at com.izforge.izpack.installer.InstallerFrame.switchPanel(InstallerFrame.java:837)
    at com.izforge.izpack.installer.InstallerFrame.navigateNext(InstallerFrame.java:1449)
    at com.izforge.izpack.installer.InstallerFrame.navigateNext(InstallerFrame.java:1417)
    at com.izforge.izpack.installer.InstallerFrame$NavigationHandler.actionPerformed(InstallerFrame.java:1559)
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    at java.awt.Component.processMouseEvent(Unknown Source)
    at javax.swing.JComponent.processMouseEvent(Unknown Source)
    at java.awt.Component.processEvent(Unknown Source)
    at java.awt.Container.processEvent(Unknown Source)
    at java.awt.Component.dispatchEventImpl(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Window.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)

  • Thierry-Dimitri Roy

    Got this stack trace under Windows Server 2008:
    could not create shortcut instance
    java.lang.Exception: unidentified problem initializing COM
    java.lang.UnsatisfiedLinkError: com.izforge.izpack.util.os.ShellLink.initializeCOM()I
    at com.izforge.izpack.util.os.ShellLink.initialize(ShellLink.java:520)
    at com.izforge.izpack.util.os.ShellLink.(ShellLink.java:374)
    at com.izforge.izpack.util.os.Win_Shortcut.initialize(Win_Shortcut.java:82)
    at com.izforge.izpack.panels.ShortcutPanel.panelActivate(ShortcutPanel.java:812)
    at com.izforge.izpack.installer.InstallerFrame.switchPanel(InstallerFrame.java:837)
    at com.izforge.izpack.installer.InstallerFrame.navigateNext(InstallerFrame.java:1449)
    at com.izforge.izpack.installer.InstallerFrame.navigateNext(InstallerFrame.java:1417)
    at com.izforge.izpack.installer.InstallerFrame$NavigationHandler.actionPerformed(InstallerFrame.java:1559)
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    at java.awt.Component.processMouseEvent(Unknown Source)
    at javax.swing.JComponent.processMouseEvent(Unknown Source)
    at java.awt.Component.processEvent(Unknown Source)
    at java.awt.Container.processEvent(Unknown Source)
    at java.awt.Component.dispatchEventImpl(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Window.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)
    java.lang.NullPointerException
    at com.izforge.izpack.util.os.Win_Shortcut.getProgramsFolder(Win_Shortcut.java:679)
    at com.izforge.izpack.panels.ShortcutPanel.getProgramsFolder(ShortcutPanel.java:915)
    at com.izforge.izpack.panels.ShortcutPanel.panelActivate(ShortcutPanel.java:826)
    at com.izforge.izpack.installer.InstallerFrame.switchPanel(InstallerFrame.java:837)
    at com.izforge.izpack.installer.InstallerFrame.navigateNext(InstallerFrame.java:1449)
    at com.izforge.izpack.installer.InstallerFrame.navigateNext(InstallerFrame.java:1417)
    at com.izforge.izpack.installer.InstallerFrame$NavigationHandler.actionPerformed(InstallerFrame.java:1559)
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    at java.awt.Component.processMouseEvent(Unknown Source)
    at javax.swing.JComponent.processMouseEvent(Unknown Source)
    at java.awt.Component.processEvent(Unknown Source)
    at java.awt.Container.processEvent(Unknown Source)
    at java.awt.Component.dispatchEventImpl(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Window.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)

  • acton

    as indicated in other post, I have OutOfMemoryError after switching to 2.2. had to rollback to 2.1.1

  • acton

    as indicated in other post, I have OutOfMemoryError after switching to 2.2. had to rollback to 2.1.1

  • @James

    Did you just see it in the console as a log message and the installation went fine or it was a show stopper for installation? Can you report back to support@zeroturnaround.com (easier to raise and maintain this issue ).

    @Thierry-Dimitri Roy

    A windows specialist has contacted you via email

    @acton

    Can you post more details to support@zeroturnaround.com

  • @James

    Did you just see it in the console as a log message and the installation went fine or it was a show stopper for installation? Can you report back to support@zeroturnaround.com (easier to raise and maintain this issue ).

    @Thierry-Dimitri Roy

    A windows specialist has contacted you via email

    @acton

    Can you post more details to support@zeroturnaround.com

  • wyz

    Hi,

    I have been using JRebel since 2.1a for Wicket development with embedded Jetty 6 and it worked like a charm.

    But after I have changed the jar file to JRebel to 2.2 I am started having errors when I change some code on-the-fly.

    The exception reads:
    Root cause:

    com.zeroturnaround.javarebel.dj
    at com.zeroturnaround.javarebel.fR.(JRebel:41)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:169)
    at com.zeroturnaround.javarebel.cc.a(JRebel:37)
    at com.zeroturnaround.javarebel.cc.a(JRebel:70)
    at com.zeroturnaround.javarebel.dw.a(Unknown Source)
    at com.zeroturnaround.javarebel.dw.a(Unknown Source)
    at com.zeroturnaround.javarebel.java5.AgentInstall.a(JRebel:96)
    at com.zeroturnaround.javarebel.java5.AgentInstall.a(JRebel:68)
    at com.zeroturnaround.javarebel.java5.AgentInstall.premain(JRebel:41)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:323)
    at sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:338)

    I also see error message in the console:
    Caused by: java.io.NotSerializableException: com.zeroturnaround.javarebel.I
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
    at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
    at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
    at org.apache.wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory$2.writeObjectOverride(IObjectStreamFactory.java:121)
    … 57 more

  • wyz

    Hi,

    I have been using JRebel since 2.1a for Wicket development with embedded Jetty 6 and it worked like a charm.

    But after I have changed the jar file to JRebel to 2.2 I am started having errors when I change some code on-the-fly.

    The exception reads:
    Root cause:

    com.zeroturnaround.javarebel.dj
    at com.zeroturnaround.javarebel.fR.(JRebel:41)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:169)
    at com.zeroturnaround.javarebel.cc.a(JRebel:37)
    at com.zeroturnaround.javarebel.cc.a(JRebel:70)
    at com.zeroturnaround.javarebel.dw.a(Unknown Source)
    at com.zeroturnaround.javarebel.dw.a(Unknown Source)
    at com.zeroturnaround.javarebel.java5.AgentInstall.a(JRebel:96)
    at com.zeroturnaround.javarebel.java5.AgentInstall.a(JRebel:68)
    at com.zeroturnaround.javarebel.java5.AgentInstall.premain(JRebel:41)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:323)
    at sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:338)

    I also see error message in the console:
    Caused by: java.io.NotSerializableException: com.zeroturnaround.javarebel.I
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
    at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
    at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)
    at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
    at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
    at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
    at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
    at org.apache.wicket.util.io.IObjectStreamFactory$DefaultObjectStreamFactory$2.writeObjectOverride(IObjectStreamFactory.java:121)
    … 57 more

  • wyz

    Btw, I am unable to locate JRebel 2.1.1 in the Archived Releases, the latest is 2.1a

  • wyz

    Btw, I am unable to locate JRebel 2.1.1 in the Archived Releases, the latest is 2.1a

  • @wyz
    Archive page updated.

  • @wyz
    Archive page updated.

  • john

    who’s dep weblogic8.0 the jrebel2.1.1?

  • who’s dep weblogic8.0 the jrebel2.1.1?