Shared Libraries Argument Provider
Emits test.library.N.{name,location,implicit} JVM system properties for every Jenkins shared library on a test task. entries is ordered: the consumer's own library at index 0, followed by peer libraries at indices 1, 2, … in declaration order. The auto-registrar generated by GenerateLocalLibraryFiles iterates contiguous indices at Jenkins startup, so this ordering is part of the contract.
Inputs are split:
entries carries the structured data (name, location path, implicit flag) and is treated as a regular
@Input(serialized via Java for configuration-cache compatibility).sourceDirectories carries the resolved source directories purely for Gradle's path-sensitive up-to-date checking; the location paths inside entries are what actually feed
asArguments.