diff --git a/jps/jps-builders/src/org/jetbrains/jps/incremental/BuildOperations.java b/jps/jps-builders/src/org/jetbrains/jps/incremental/BuildOperations.java index 02822d6bdd08..868b0c6345ec 100644 --- a/jps/jps-builders/src/org/jetbrains/jps/incremental/BuildOperations.java +++ b/jps/jps-builders/src/org/jetbrains/jps/incremental/BuildOperations.java @@ -152,10 +152,8 @@ public class BuildOperations { try { final Map> cleanedSources = new java.util.HashMap>(); - ProjectBuilderLogger logger = context.getLoggingManager().getProjectBuilderLogger(); - final Collection outputsToLog = logger.isEnabled() ? new LinkedList() : null; final THashSet dirsToDelete = new THashSet(FileUtil.FILE_HASHING_STRATEGY); - final THashSet deletedPaths = new THashSet(); + final Collection deletedPaths = new ArrayList(); dirtyFilesHolder.processDirtyFiles(new FileProcessor() { private final Map mappingsCache = new java.util.HashMap(); // cache the mapping locally @@ -172,9 +170,6 @@ public class BuildOperations { if (outputs != null) { final boolean shouldPruneOutputDirs = target instanceof ModuleBasedTarget; for (String output : outputs) { - if (outputsToLog != null) { - outputsToLog.add(output); - } final File outFile = new File(output); final boolean deleted = outFile.delete(); if (deleted) { @@ -198,9 +193,13 @@ public class BuildOperations { } }); - if (outputsToLog != null && context.isMake()) { - logger.logDeletedFiles(outputsToLog); + if (context.isMake()) { + final ProjectBuilderLogger logger = context.getLoggingManager().getProjectBuilderLogger(); + if (logger.isEnabled()) { + logger.logDeletedFiles(deletedPaths); + } } + if (!deletedPaths.isEmpty()) { context.processMessage(new FileDeletedEvent(deletedPaths)); } diff --git a/jps/jps-builders/testSrc/org/jetbrains/jps/incremental/artifacts/RebuildArtifactOnConfigurationChangeTest.java b/jps/jps-builders/testSrc/org/jetbrains/jps/incremental/artifacts/RebuildArtifactOnConfigurationChangeTest.java index 6385e43b88c1..496fb24dc3b7 100644 --- a/jps/jps-builders/testSrc/org/jetbrains/jps/incremental/artifacts/RebuildArtifactOnConfigurationChangeTest.java +++ b/jps/jps-builders/testSrc/org/jetbrains/jps/incremental/artifacts/RebuildArtifactOnConfigurationChangeTest.java @@ -23,7 +23,7 @@ public class RebuildArtifactOnConfigurationChangeTest extends ArtifactBuilderTes a.getRootElement().addChild(JpsPackagingElementFactory.getInstance().createDirectoryCopy(dir2)); buildAll(); assertOutput(a, fs().file("a.txt", "a").file("b.txt", "b")); - assertCopied("dir1/a.txt", "dir2/b.txt"); + assertDeletedAndCopied("out/artifacts/a/a.txt", "dir1/a.txt", "dir2/b.txt"); buildAllAndAssertUpToDate(); }