this.jarClasspathSnapshotProvider = jarClasspathSnapshotProvider;
}
public WorkResult execute(JavaCompileSpec spec) {
Clock clock = new Clock();
JarClasspathSnapshot jarClasspathSnapshot = jarClasspathSnapshotProvider.getJarClasspathSnapshot(spec.getClasspath());
RecompilationSpec recompilationSpec = recompilationSpecProvider.provideRecompilationSpec(inputs, previousCompilation, jarClasspathSnapshot);
if (recompilationSpec.isFullRebuildNeeded()) {
LOG.lifecycle("Full recompilation is required because {}. Analysis took {}.", recompilationSpec.getFullRebuildCause(), clock.getTime());
return cleaningCompiler.execute(spec);