From db18c4541ce4a17be944f6baa91aef4e34905962 Mon Sep 17 00:00:00 2001 From: Eugene Kudelevsky Date: Wed, 3 Oct 2012 19:33:16 +0400 Subject: [PATCH] IDEA-90719 fix order of apklib dependencies --- .../src/org/jetbrains/android/util/AndroidUtils.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/plugins/android/src/org/jetbrains/android/util/AndroidUtils.java b/plugins/android/src/org/jetbrains/android/util/AndroidUtils.java index 6f22fad9ed42..bdeba9354bf6 100644 --- a/plugins/android/src/org/jetbrains/android/util/AndroidUtils.java +++ b/plugins/android/src/org/jetbrains/android/util/AndroidUtils.java @@ -623,7 +623,12 @@ public class AndroidUtils { boolean androidLibrariesOnly, List result, Set visited) { - for (OrderEntry orderEntry : ModuleRootManager.getInstance(module).getOrderEntries()) { + final OrderEntry[] entries = ModuleRootManager.getInstance(module).getOrderEntries(); + // loop in the inverse order to resolve dependencies on the libraries, so that if a library + // is required by two higher level libraries it can be inserted in the correct place + + for (int i = entries.length - 1; i >= 0; i--) { + final OrderEntry orderEntry = entries[i]; if (orderEntry instanceof ModuleOrderEntry) { final ModuleOrderEntry moduleOrderEntry = (ModuleOrderEntry)orderEntry;