gradle: clear build manager state only if build related gradle configuration changed

This commit is contained in:
Vladislav.Soroka
2015-01-15 11:28:18 +03:00
parent 251d6cc7d2
commit da2c2b585f
@@ -163,17 +163,19 @@ public class GradleResourceCompilerConfigurationGenerator {
affectedModuleConfigurations.put(module.getName(), resourceConfig);
}
boolean configurationUpdateRequired = false;
for (Map.Entry<String, GradleModuleResourceConfiguration> entry : affectedModuleConfigurations.entrySet()) {
GradleModuleResourceConfiguration currentConfiguration = projectConfig.moduleConfigurations.get(entry.getKey());
boolean configurationUpdateRequired = context.isRebuild() || !gradleConfigFile.exists();
if(!configurationUpdateRequired) {
for (Map.Entry<String, GradleModuleResourceConfiguration> entry : affectedModuleConfigurations.entrySet()) {
GradleModuleResourceConfiguration currentConfiguration = projectConfig.moduleConfigurations.get(entry.getKey());
if (currentConfiguration == null || !isSameModuleConfiguration(currentConfiguration, entry.getValue())) {
configurationUpdateRequired = true;
break;
if (currentConfiguration == null || !isSameModuleConfiguration(currentConfiguration, entry.getValue())) {
configurationUpdateRequired = true;
break;
}
}
}
if (configurationUpdateRequired || context.isRebuild()) {
if (configurationUpdateRequired) {
projectConfig.moduleConfigurations.putAll(affectedModuleConfigurations);
final Document document = new Document(new Element("gradle-project-configuration"));