

The important thing here is the addition of resource path into classpath and the elimination of the link tag that jrebel puts automatically into the web node.Īlso i configured the plugin in the pom.xml, setting the property addResourcesDirToRebelXml to true Notice that the comments were things that i have tried previously, it doesn't means that won't work. I'm using a JSF project with Spring 3, with netbeans and running jrebel via IDE
Jrebel maven plugin version manual#
I've had the same issue, and reading the manual i found a solution that works for me. You can read more about the rebel.xml file from here: When you however add the build dir to the classpath and run the class, then JRebel should reload the classes without needing the rebel.xml file. To see the reloads you'd need to generate the rebel.xml file and build it into the jar. You can check if that's also the case with your application by running the app in command line.įirst run the Spring Boot jar file with JRebel and without a rebel.xml file and you'll see the reloads won't happen. The same thing sometimes also happens with an exploded web application started from an IDE. Such a setup doesn't need the rebel.xml file. In that case the classes being run are already in the build folder so they are reloadable and also the changes happen in a directory that is monitored by JRebel.

However in many cases when running a standalone application inside an IDE, then the IDE doesn't run the jar file, but instead directly runs the classes from the build directory and adds the build directory to the classpath.

To add the directories in the rebel.xml to classpath so JRebel would monitor them To make JVM load the classes from the build directory So if starting a jar file with JRebel and without a rebel.xml file then it wouldn't have any directories to monitor and wouldn't be able to reload anything. Regardless of the rebel.xml file, JRebel monitors all directories it can find in the classpath. JRebel uses the rebel.xml file in order to remap your classpath resources and servlet resources to your build directory so that when you make a change in the IDE and build the class, then JRebel will detect the change in that build directory and reload the changed class.
