Details
-
Bug
-
Resolution: Done
-
Major
-
None
-
None
Description
ServiceLoader API usage seems broken
In ModuleXmlParser I see
case XMLStreamConstants.END_ELEMENT: {
final PathFilter exportFilter = filterList.isEmpty() ? PathFilters.exclude("META-INF") : PathFilters.all(filterList);
if (file.isDirectory())
else {
try
catch (IOException e)
{ throw new XMLStreamException("Invalid JAR file specified", reader.getLocation(), e); } }
specBuilder.addResourceRoot(resourceLoader);
return;
}
which generally seems to disable resource loads from META-INF. If I add this explicitly to modules.xml
<resource-root path="jbosgi-framework-core-1.0.0.Alpha8-SNAPSHOT.jar">
<exports>
<include path="META-INF"/>
</exports>
</resource-root>
I can load the resourceURL, but a subsequent classload of the service fails. Adding the path as well
<resource-root path="jbosgi-framework-core-1.0.0.Alpha8-SNAPSHOT.jar">
<exports>
<include path="META-INF/services"/>
<include path="org/jboss/osgi/framework/launch"/>
</exports>
</resource-root>
lets that resource load fail.
Attachments
Issue Links
- is blocked by
-
MODULES-36 LocalModuleLoader filter specifications do not support multiple "include" elements properly
- Closed