From e4f3f6d93a8720dd70734e96ef1a8ba93672f4e4 Mon Sep 17 00:00:00 2001 From: Mikhail Mazurkevich Date: Fri, 24 Jul 2020 13:38:33 +0300 Subject: [PATCH] [jps cache] Forcibly cleanup compilation output folder at `Force Update JPS Caches` GitOrigin-RevId: 91c92c344e15d44b63d7616a0fef5390b952f581 --- plugins/jps-cache/resources/META-INF/plugin.xml | 2 +- .../jps/cache/loader/JpsOutputLoaderManager.java | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/plugins/jps-cache/resources/META-INF/plugin.xml b/plugins/jps-cache/resources/META-INF/plugin.xml index 2548d4831827..ea190f1cd297 100644 --- a/plugins/jps-cache/resources/META-INF/plugin.xml +++ b/plugins/jps-cache/resources/META-INF/plugin.xml @@ -38,7 +38,7 @@ - + diff --git a/plugins/jps-cache/src/com/intellij/jps/cache/loader/JpsOutputLoaderManager.java b/plugins/jps-cache/src/com/intellij/jps/cache/loader/JpsOutputLoaderManager.java index 6bc6d9fa866e..2b446499e736 100644 --- a/plugins/jps-cache/src/com/intellij/jps/cache/loader/JpsOutputLoaderManager.java +++ b/plugins/jps-cache/src/com/intellij/jps/cache/loader/JpsOutputLoaderManager.java @@ -37,6 +37,7 @@ import org.jetbrains.jps.model.serialization.JpsLoaderBase; import org.jetbrains.jps.model.serialization.PathMacroUtil; import org.jetbrains.jps.util.JpsPathUtil; +import java.io.File; import java.nio.file.Path; import java.nio.file.Paths; import java.util.*; @@ -90,7 +91,15 @@ public class JpsOutputLoaderManager implements Disposable { Pair commitInfo = getNearestCommit(isForceUpdate); if (commitInfo != null) { // Drop JPS metadata to force plugin for downloading all compilation outputs - if (isForceUpdate) myMetadataLoader.dropCurrentProjectMetadata(); + if (isForceUpdate) { + myMetadataLoader.dropCurrentProjectMetadata(); + File outDir = new File(myBuildOutDir); + if (outDir.exists()) { + indicator.setText("Clean output directories"); + FileUtil.delete(outDir); + } + LOG.info("Compilation output folder empty"); + } startLoadingForCommit(commitInfo.first); } hasRunningTask.set(false);