Sometimes a man has to do things he does not want to do, such as pulling teeth, taking medicine, paying taxes or running the Mule ESB Community Edition under Windows.
Nothing wrong with the Mule ESB Community Edition, on the contrary – it is an nice ESB with a competitive price-tag! The problem is is that it if you are running a 64-bit Windows operating system and you trying to launch Mule using the mule.bat file in the bin directory, you are very likely to get an error saying something like this:
java.lang.UnsupportedClassVersionError: Unsupported major.minor version 51.0
I must confess to being completely puzzled at first – I was running Java 7 and after several verifications, I was still running Java 7.
The problem lies in the Java Service Wrapper from Tanuki Software – the 64-bit Windows version of the wrapper is not available for free. Understandably, MuleSoft does not include this wrapper in the CE version, only in the paid EE version of Mule.
We are not out of luck, however – a kind gentleman has compiled a 64-bit Windows version from the freely available source-code of the Java Service Wrapper. I have tried version 3.5.14 of the service wrapper with version 3.7.0 of the Mule ESB Community Edition and am pleased to say that everything seems to work flawlessly.
Here is how to use the 64-bit service wrapper with Mule CE:
- Download a copy of Java Service Wrapper for Windows x64.
- Unpack the ZIP-archive.
I will call the directory in which the service wrapper was unpacked the JSW_DIR.
- Remove any files with names starting with “wrapper-windows” from the MULE_HOME/lib/boot/exec directory.
- Remove any files with name starting with “wrapper-windows” from the MULE_HOME/lib/boot directory.
- Copy the file wrapper.exe from the JSW_DIR/bin to the MULE_HOME/lib/boot/exec directory.
- Rename the wrapper.exe fil
- Copy the wrapper.dll file from the JSW_DIR/lib to the MULE_HOME/lib/boot directory.
- Rename the wrapper.dll file in the MULE_HOME/lib/boot directory to wrapper-windows-x86-64.dll.
- Delete the file wrapper-3.2.3.jar in the MULE_HOME/lib/boot directory.
- Copy the file wrapper.jar from JSW_DIR/lib to the MULE_HOME/lib/boot directory.
- Launch Mule using the mule.bat file in the MULE_HOME/bin directory.
Again, this would not have been possible without the efforts of Simon Krenger – many thanks!
This is applicable to other products that use the Tanuki Java Software Wrapper as well, not only the Mule ESB!