includeAll does not work with java 9+ and multi-module projects.

Description

As far as I can tell, IncludeAll relies on legacy java ClassLoader capabilities to compute the relative path of the files to include.
Specifically AbstractResourceAccessor.convertToPath() relies on rootStrings which was populated with the URLs of all jars present in the classpath before java 9.

This approach does not work with java 9+.

As result changelog files from external jars are not included and the following warning is logged:
WARN Not a valid resource entry: jar:file:/.m2/repository/com/foo/1.0.0/foo-1.0.0.jar!/db/changelog/changelog-001.xml

Environment

SpringBoot 2.2.2 and 2.1.11
Maven
Windows

Reporter

mat

Components

Affects versions

Priority

Major
Configure