It's probably the Java-only subprojects that are recompiling. `crossPaths` is false, so it's the same analysis cache file. But the analysis cache also stores some compile configuration, so the changing scala version will trigger a recompile.