I was thinking maybe the impl module could be a minimized fat jar and the API module would have the impl module as its only dependency. We'd then avoid those same library / different version conflicts?
Comments
Log in with your Bluesky account to leave a comment
It doesn't really work with isolated class loaders as plugins interact with each other. E.g. Kotlin Gradle plugin and Android Gradle Plugin expose hooks and connect things together.
I think all that, but only for the unstable dependencies. For anything that is stable, you want them as normal dependencies as those are shared between all the plugins, this minimizing overall memory footprint.
Comments
I guess what I really want is for each plug-in to get its own isolated classpath.