Skip to content
This repository was archived by the owner on Aug 18, 2020. It is now read-only.

Implement Coursier for plugin dependency resolution and fetching #113

Merged
merged 7 commits into from
Aug 12, 2019

Conversation

hlxid
Copy link
Member

@hlxid hlxid commented Aug 9, 2019

Implements Coursier to download dependencies that are required by plugins and the sbt auto-plugin to include the pom files of plugins inside the jar like discussed in #105.
The sbt plugin is automatically in all projects active unless deactivated like this PR does for the framework.

This PR also updates the PluginClassLoader to always have the platform/extension class loader as it's parent. This ensures that plugins get the dependencies of their pom file. If the same class of a dependency also exists in the classloader of the framework the class of the framework would have higher priority than the one in the plugin class loader. By having the platform/extension class loader as a parent the class can only come from java or the plugin class loader with the wanted version of the dependencies added.

A caching class loader isn't in this PR tough. I don't have enough time for that before my vacation.

API PR: codeoverflow-org/chatoverflow-api#15
Plugins-public PR: codeoverflow-org/chatoverflow-plugins#2

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants