This enables you to migrate gradually to the new API by mixing new components and libraries with those written against the old API.

Change imports

Once you have upgraded to Sonatype/Sisu 2.5.x you can start migrating to the new API. In most cases this just involves changing imports:

Old package

New package

org.sonatype.inject

org.eclipse.sisu

org.sonatype.guice.bean.binders

org.eclipse.sisu.wire org.eclipse.sisu.space

org.sonatype.guice.bean.containers

org.eclipse.sisu.launch

org.sonatype.guice.bean.converters

org.eclipse.sisu.wire

org.sonatype.guice.bean.inject

org.eclipse.sisu.bean

org.sonatype.guice.bean.locators

org.eclipse.sisu.inject

org.sonatype.guice.bean.locators.spi

org.eclipse.sisu.inject

org.sonatype.guice.bean.reflect

org.eclipse.sisu.inject org.eclipse.sisu.bean org.eclipse.sisu.space

org.sonatype.guice.bean.scanners.index

org.eclipse.sisu.space

org.sonatype.guice.bean.scanners

org.eclipse.sisu.space

org.sonatype.guice.plexus.annotations

org.eclipse.sisu.plexus

org.sonatype.guice.plexus.binders

org.eclipse.sisu.plexus

org.sonatype.guice.plexus.config

org.eclipse.sisu.plexus

org.sonatype.guice.plexus.converters

org.eclipse.sisu.plexus

org.sonatype.guice.plexus.lifecycles

org.eclipse.sisu.plexus

org.sonatype.guice.plexus.locators

org.eclipse.sisu.plexus

org.sonatype.guice.plexus.scanners

org.eclipse.sisu.plexus

org.sonatype.guice.plexus.shim

org.eclipse.sisu.plexus

All the old types have been marked as deprecated to help identify which components you need to upgrade.

Check bindings

After upgrading and changing imports the last migration step is to see if your app works as expected when you swap the legacy Sisu wrapper with Eclipse/Sisu:

<!-- | Guice is now a provided dependency of Eclipse/Sisu to make it easier to | switch in other variants (classic vs no-AOP) without needing exclusions --><dependency><groupId>org.sonatype.sisu</groupId><artifactId>sisu-guice</artifactId><version>3.1.6</version></dependency>

If you find that some components are missing at runtime, it could be that you are relying on a library that still requires the old Sonatype/Sisu API. To confirm this turn on trace logging for Sisu; you can either use the sisu.debug system property to send Sisu trace logging to the console, or alternatively set the logging level for the 'Sisu' logger to trace. Any components that couldn't be loaded at runtime because of missing types will be logged under "Problem scanning...".