From 188e8b983eb9c2b2c7d42139b1f0168ab8d78294 Mon Sep 17 00:00:00 2001 From: "Natalia.Ukhorskaya" Date: Tue, 10 Sep 2013 16:22:26 +0400 Subject: [PATCH] Missed sdk annotations for Android Sdk #KT-3965 Fixed --- .../build/KotlinBuilderModuleScriptGenerator.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinBuilderModuleScriptGenerator.java b/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinBuilderModuleScriptGenerator.java index c1b7a2cccf8..beecde4bfad 100644 --- a/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinBuilderModuleScriptGenerator.java +++ b/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinBuilderModuleScriptGenerator.java @@ -31,8 +31,10 @@ import org.jetbrains.jps.model.JpsDummyElement; import org.jetbrains.jps.model.java.*; import org.jetbrains.jps.model.library.JpsLibrary; import org.jetbrains.jps.model.library.sdk.JpsSdk; +import org.jetbrains.jps.model.library.sdk.JpsSdkType; import org.jetbrains.jps.model.module.JpsDependencyElement; import org.jetbrains.jps.model.module.JpsLibraryDependency; +import org.jetbrains.jps.model.module.JpsModule; import org.jetbrains.jps.model.module.JpsSdkDependency; import java.io.File; @@ -109,7 +111,8 @@ public class KotlinBuilderModuleScriptGenerator { private static List findAnnotationRoots(@NotNull ModuleBuildTarget target) { List annotationRootFiles = ContainerUtil.newArrayList(); - JpsSdk sdk = target.getModule().getSdk(JpsJavaSdkType.INSTANCE); + JpsModule module = target.getModule(); + JpsSdk sdk = module.getSdk(getSdkType(module)); if (sdk != null) { annotationRootFiles.addAll(sdk.getParent().getFiles(JpsAnnotationRootType.INSTANCE)); } @@ -131,6 +134,16 @@ public class KotlinBuilderModuleScriptGenerator { return annotationRootFiles; } + @NotNull + private static JpsSdkType getSdkType(@NotNull JpsModule module) { + for (JpsDependencyElement dependency : module.getDependenciesList().getDependencies()) { + if (dependency instanceof JpsSdkDependency) { + return ((JpsSdkDependency) dependency).getSdkType(); + } + } + return JpsJavaSdkType.INSTANCE; + } + @NotNull private static JpsJavaDependenciesEnumerator getAllDependencies(@NotNull ModuleBuildTarget target) { return JpsJavaExtensionService.dependencies(target.getModule()).recursively().exportedOnly()