From ec17a292857ccc0f458de06d055485e4eb8765be Mon Sep 17 00:00:00 2001 From: Xavier Ducrohet Date: Fri, 27 Jan 2012 17:22:11 -0800 Subject: Automatically add annotations.jar on the classpath for API<=15 This is to provide app some annotations used by the tools. Those annotations will be part of the API later. Change-Id: I32b31a3039e4fbb331682a84192252bd43c0f54a --- anttasks/src/com/android/ant/NewSetupTask.java | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'anttasks') diff --git a/anttasks/src/com/android/ant/NewSetupTask.java b/anttasks/src/com/android/ant/NewSetupTask.java index 46f5b14..29caf6e 100644 --- a/anttasks/src/com/android/ant/NewSetupTask.java +++ b/anttasks/src/com/android/ant/NewSetupTask.java @@ -20,10 +20,10 @@ import com.android.io.FileWrapper; import com.android.io.FolderWrapper; import com.android.sdklib.AndroidVersion; import com.android.sdklib.IAndroidTarget; +import com.android.sdklib.IAndroidTarget.IOptionalLibrary; import com.android.sdklib.ISdkLog; import com.android.sdklib.SdkConstants; import com.android.sdklib.SdkManager; -import com.android.sdklib.IAndroidTarget.IOptionalLibrary; import com.android.sdklib.internal.project.ProjectProperties; import com.android.sdklib.internal.project.ProjectProperties.PropertyType; import com.android.sdklib.xml.AndroidManifest; @@ -282,7 +282,7 @@ public class NewSetupTask extends Task { } // look for referenced libraries. - processReferencedLibraries(antProject, androidTarget); + processReferencedLibraries(antProject, androidTarget, sdkOsPath); // always check the manifest minSdkVersion. checkManifest(antProject, androidTarget.getVersion()); @@ -436,7 +436,8 @@ public class NewSetupTask extends Task { } } - private void processReferencedLibraries(Project antProject, IAndroidTarget androidTarget) { + private void processReferencedLibraries(Project antProject, IAndroidTarget androidTarget, + String sdkLocation) { // prepare several paths for future tasks Path rootPath = new Path(antProject); Path resPath = new Path(antProject); @@ -523,6 +524,17 @@ public class NewSetupTask extends Task { System.out.println("------------------\n"); + if (androidTarget.getVersion().getApiLevel() <= 15) { + System.out.println("API<=15: Adding annotations.jar to the classpath.\n"); + + PathElement element = jarsPath.createPathElement(); + element.setPath(sdkLocation + "/" + SdkConstants.FD_TOOLS + + "/" + SdkConstants.FD_SUPPORT + + "/" + SdkConstants.FN_ANNOTATIONS_JAR); + + System.out.println("------------------\n"); + } + // even with no libraries, always setup these so that various tasks in Ant don't complain // (the task themselves can handle a ref to an empty Path) antProject.addReference(mProjectLibrariesJarsOut, jarsPath); -- cgit v1.1 From b79938741991aa6d48b28919b92c62113372d8e5 Mon Sep 17 00:00:00 2001 From: Xavier Ducrohet Date: Fri, 27 Jan 2012 18:54:23 -0800 Subject: Fix issue where updated Java files don't trigger a new apk in ant. Change-Id: Ifb914125481448c3ab6425e459c9b9e28e2fe4c4 --- anttasks/src/com/android/ant/InputPath.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'anttasks') diff --git a/anttasks/src/com/android/ant/InputPath.java b/anttasks/src/com/android/ant/InputPath.java index 905e7bc..2299f07 100644 --- a/anttasks/src/com/android/ant/InputPath.java +++ b/anttasks/src/com/android/ant/InputPath.java @@ -76,7 +76,7 @@ public class InputPath { */ public boolean ignores(File file) { // always ignore hidden files/folders. - return file.getName().startsWith(".") == false; + return file.getName().startsWith("."); } /** -- cgit v1.1