Spring Loaded Blossom plugin released
#1 by tmattsson on Jul 3, 2015 6:12:07 PM

Spring Loaded is a JVM agent for reloading class file changes whilst a JVM is running. It allows for adding and removing methods, annotations, types and so on without restarting the JVM.

The Blossom plugin for Spring Loaded refreshes dispatcher servlets when classes are changed. It will see methods that have been added, annotations that have had their values changed and new annotations added and those removed. It eliminates the need to restart in the majority of cases. This should drastically speed up development!

To use the plugin start by downloading the Spring Loaded JAR. Then add it to the JVM using these JVM arguments:

-javaagent:<path to the JAR> -noverify

Then add the plugin dependency to your project:

<dependency>
<groupId>info.magnolia.blossom</groupId>
<artifactId>magnolia-blossom-spring-loaded</artifactId>
<version>1.0.3</version>
</dependency

After this you can start the application in debug mode and reload changes using hot-swap.

Spring Loaded currently doesn't reload classes from within JAR files. This is going to be supported in the next version, 1.2.4. Until then you'll need to configure your IDE to package classes into the WEB-INF/classes directory instead. On my blog there's instructions on how to do this in IntelliJ IDEA.

For more details see my blog post about the plugin:

http://tobias-mattsson-magnolia.blogspot.se/

// Tobias