loaders
The same loaders load searches, for PluginJarCollector's compile classpath. The two MUST agree: a name the compiler resolves and the snippet loader then cannot find is a NoClassDefFoundError, strictly worse than the compile error it replaced.
Loaders, not urls — a jar-in-jar loader keeps adding urls after startup, so a cached url list goes stale where a cached loader does not.