Has anybody sometime tried to use JRebel with Mule instead of a typical application server? If so, could you describe your experience?
As far as I know, currently, Mule is not officially supported by the JRebel team. However, I was wondering if there might be some workaround to this limitation.
JRebel is a productivity tool that allows developers to reload code changes instantly. JRebel skips the rebuild, restart, and redeploy cycle common in Java development.
Mule, the runtime engine of Anypoint Platform, is a lightweight Java-based enterprise service bus (ESB) and integration platform that allows developers to connect applications together quickly and easily, enabling them to exchange data.
Both platforms are open-source, but they differ significantly in their implementation of the open-source model. Apache Camel is a free standalone program supported solely by its community of developers. Mule ESB is the runtime engine of MuleSoft's Anypoint Platform, a licensed and professionally-supported product.
Although Mule ESB is not officially supported by JRebel, we have found a workaround. First of all, let me start by stating that:
So, the only thing we can hot-deploy are the Java classes, which is still very welcome. How do we do that?
Start by configuring the JRebel agent in $MULE_HOME/conf/wrapper.conf. The required lines, in our case, were:
wrapper.java.additional.13=-javaagent:{path to jrebel.jar}
wrapper.java.additional.14=-Xbootclasspath:{path to rebelboot.jar}
wrapper.java.additional.16=-Drebel.remoting_plugin=true
wrapper.java.additional.19=-Drebel.remoting_port={whatever}
These are the JVM paremeters required to launch JRebel along with Mule. The numbering of the parameters is arbitrary.
We want to use JRebel in remote mode. You can read about this mode in the docs. That's the reason for the wrapper.java.additional.16=-Drebel.remoting_plugin=true
and wrapper.java.additional.19=-Drebel.remoting_port={whatever}
paremeters.
wrapper.conf
.If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With