Preparing for Confluence 9.0 - EAP out now

Apologies, it’s quite likely you adopted very early-on. 2021-06-09 but it’s always been best practice, just like with Spring Scanner. You’ll want this so the plugin system knows your plugin uses Spring for DI.

This in combination with <Atlassian-Plugin-Key> informs the plugin system that it shouldn’t try and create the Spring+OSGi wiring for you, you have full control by doing everything explicitly yourself. We call this “transformerless” because the process of the plugin system creating the wiring and spring context for you is a ‘transformation’ of the plugin.

Transformerless requires a little bit more learning (sounds like you’re at the very least most of the way though since you’re using OSGi Spring Java config) for newcomers, but we’ve found causes less headaches. It’s also faster to install your plugins.