diff --git a/plugins/android/src/org/jetbrains/android/compiler/AndroidCompileUtil.java b/plugins/android/src/org/jetbrains/android/compiler/AndroidCompileUtil.java index 9ec2f05e98a8..fd3e4cecca9f 100644 --- a/plugins/android/src/org/jetbrains/android/compiler/AndroidCompileUtil.java +++ b/plugins/android/src/org/jetbrains/android/compiler/AndroidCompileUtil.java @@ -18,7 +18,10 @@ package org.jetbrains.android.compiler; import com.intellij.CommonBundle; import com.intellij.compiler.impl.CompileContextImpl; import com.intellij.compiler.impl.ModuleCompileScope; +import com.intellij.compiler.options.CompileStepBeforeRun; import com.intellij.compiler.progress.CompilerTask; +import com.intellij.execution.configurations.RunConfiguration; +import com.intellij.execution.junit.JUnitConfiguration; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; import com.intellij.openapi.compiler.CompileContext; @@ -356,4 +359,9 @@ public class AndroidCompileUtil { } return ArrayUtil.toStringArray(result); } + + public static boolean isFullBuild(@NotNull CompileContext context) { + RunConfiguration runConfiguration = CompileStepBeforeRun.getRunConfiguration(context); + return !(runConfiguration instanceof JUnitConfiguration); + } } diff --git a/plugins/android/src/org/jetbrains/android/compiler/AndroidDexCompiler.java b/plugins/android/src/org/jetbrains/android/compiler/AndroidDexCompiler.java index c081254f5ad1..088e8665fde3 100644 --- a/plugins/android/src/org/jetbrains/android/compiler/AndroidDexCompiler.java +++ b/plugins/android/src/org/jetbrains/android/compiler/AndroidDexCompiler.java @@ -75,6 +75,10 @@ public class AndroidDexCompiler implements ClassPostProcessingCompiler { @NotNull public ProcessingItem[] getProcessingItems(CompileContext context) { + if (!AndroidCompileUtil.isFullBuild(context)) { + return ProcessingItem.EMPTY_ARRAY; + } + return ApplicationManager.getApplication().runReadAction(new PrepareAction(context)); } diff --git a/plugins/android/src/org/jetbrains/android/compiler/AndroidPackagingCompiler.java b/plugins/android/src/org/jetbrains/android/compiler/AndroidPackagingCompiler.java index f47570f16b0c..5b494d95aa62 100644 --- a/plugins/android/src/org/jetbrains/android/compiler/AndroidPackagingCompiler.java +++ b/plugins/android/src/org/jetbrains/android/compiler/AndroidPackagingCompiler.java @@ -94,6 +94,10 @@ public class AndroidPackagingCompiler implements PackagingCompiler { @NotNull public ProcessingItem[] getProcessingItems(CompileContext context) { + if (!AndroidCompileUtil.isFullBuild(context)) { + return ProcessingItem.EMPTY_ARRAY; + } + final List items = new ArrayList(); for (Module module : ModuleManager.getInstance(context.getProject()).getModules()) { AndroidFacet facet = AndroidFacet.getInstance(module); diff --git a/plugins/android/src/org/jetbrains/android/compiler/AndroidResourcesPackagingCompiler.java b/plugins/android/src/org/jetbrains/android/compiler/AndroidResourcesPackagingCompiler.java index 3bf30f9ad5cf..9a0acf3e5054 100644 --- a/plugins/android/src/org/jetbrains/android/compiler/AndroidResourcesPackagingCompiler.java +++ b/plugins/android/src/org/jetbrains/android/compiler/AndroidResourcesPackagingCompiler.java @@ -42,6 +42,10 @@ public class AndroidResourcesPackagingCompiler implements ClassPostProcessingCom @NotNull @Override public ProcessingItem[] getProcessingItems(CompileContext context) { + if (!AndroidCompileUtil.isFullBuild(context)) { + return ProcessingItem.EMPTY_ARRAY; + } + final List items = new ArrayList(); for (Module module : ModuleManager.getInstance(context.getProject()).getModules()) { AndroidFacet facet = AndroidFacet.getInstance(module);