[ https://issues.apache.org/jira/browse/SLING-11747?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Robert Munteanu resolved SLING-11747. ------------------------------------- Resolution: Fixed > Unable to override the built-in content package feature model extension > ----------------------------------------------------------------------- > > Key: SLING-11747 > URL: https://issues.apache.org/jira/browse/SLING-11747 > Project: Sling > Issue Type: Bug > Components: Feature Model > Affects Versions: Feature Model Launcher 1.2.2 > Reporter: Robert Munteanu > Assignee: Robert Munteanu > Priority: Major > Fix For: Feature Model Launcher 1.2.4 > > > With SLING-10956 we now have an assembly which allows us to drop in > additional extensions and/or dependencies in the lib directory and have them > located by the Feature Launcher using the {{ServiceLoader}} mechanism. > That mechanism does not work for the [content > extension|https://github.com/apache/sling-org-apache-sling-feature-extension-content]. > This extension is special because the handler it provides - > https://github.com/apache/sling-org-apache-sling-feature-extension-content/blob/master/src/main/java/org/apache/sling/feature/extension/content/ContentHandler.java > - is supposed to override the buit-in handler from > https://github.com/apache/sling-org-apache-sling-feature-launcher/blob/master/src/main/java/org/apache/sling/feature/launcher/impl/extensions/handlers/ContentPackageHandler.java > . > It seems that the way the classpath is created by the launcher script does > not allow 'extension' jars to override classes provided by the main jar file. > I have looked at the [ServiceLoader > javadoc|https://docs.oracle.com/javase/8/docs/api/index.html?java/util/ServiceLoader.html] > and it states that > {quote}When adding providers to the cache, the Iterator processes resources > in the order that the ClassLoader.getResources(String) method finds the > service configuration files.{quote} > In practice, I was only able to make the extension override the build-in > handled by prepending it to the classpath. -- This message was sent by Atlassian Jira (v8.20.10#820010)