Coursier comes with the capability to resolve URLs with custom protocols.
This requires an implementation of URLStreamHandlerFactory in the package coursier.cache.protocol.
This library offers an implementation for Google Artifact Registry (GAR) urls protocol artifactregistry://.
Support is still in development.
Support is still in development
Coursier will search for your plugin with the following order on various classloaders:
- Custom classloaders provided via the API (see FileCache.withClassLoaders)
- Thread.currentThread().getContextClassLoader
- The classloader that loaded coursier itself (more precisely, coursier.cache.CacheUrl.getClass.getClassLoader)