It looks like your using a 3rd party Ant build system instead of the
one that comes with the SDK.

>From the stack trace of the exception it looks like this is
http://code.google.com/p/autoandroid/wiki/AndroidAnt
You might want to file a bug there, or ask a question to the commiter
of that project.

Xav

On Sat, Apr 24, 2010 at 12:57 AM, veradis <[email protected]> wrote:
> Hi,
>
>  I want to compile my Android APP using ANT in windows. I placed
> build.xml in project root and included necessary jars in project lib
> folder. I had made proper configurations for ant also, but its not
> working. Please help me on this.
>
> Error
> ====
>
> C:\Documents and Settings\nav\workspace\YumFlixMobile>ant
> Buildfile: C:\Documents and Settings\nav\workspace\YumFlixMobile
> \build.xml
>
> clean:
>
> resource-src:
>
> BUILD FAILED
> C:\Documents and Settings\nav\workspace\YumFlixMobile\build.xml:33:
> java.lang.Nu
> llPointerException
>        at
> com.googlecode.androidant.AndroidTools.locateTool(AndroidTools.java:8
> 1)
>        at
> com.googlecode.androidant.AndroidTools.startTool(AndroidTools.java:74
> )
>        at
> com.googlecode.androidant.AndroidTools.startTool(AndroidTools.java:62
> )
>        at
> com.googlecode.androidant.WindowsAndroidTools.aapt(WindowsAndroidTool
> s.java:36)
>        at aapt.main(aapt.java:7)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> java:39)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
> org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:217)
>        at
> org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:15
> 2)
>        at org.apache.tools.ant.taskdefs.Java.run(Java.java:771)
>        at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:
> 221)
>        at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:
> 135)
>        at org.apache.tools.ant.taskdefs.Java.execute(Java.java:108)
>        at
> org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
>        at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
> org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.jav
> a:106)
>        at org.apache.tools.ant.Task.perform(Task.java:348)
>        at
> org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
>        at
> org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> java:39)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
> org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.jav
> a:106)
>        at org.apache.tools.ant.Task.perform(Task.java:348)
>        at
> org.apache.tools.ant.taskdefs.MacroInstance.execute(MacroInstance.jav
> a:398)
>        at
> org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> java:39)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
> org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.jav
> a:106)
>        at org.apache.tools.ant.Task.perform(Task.java:348)
>        at org.apache.tools.ant.Target.execute(Target.java:390)
>        at org.apache.tools.ant.Target.performTasks(Target.java:411)
>        at
> org.apache.tools.ant.Project.executeSortedTargets(Project.java:1360)
>        at org.apache.tools.ant.Project.executeTarget(Project.java:
> 1329)
>        at
> org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExe
> cutor.java:41)
>        at org.apache.tools.ant.Project.executeTargets(Project.java:
> 1212)
>        at org.apache.tools.ant.Main.runBuild(Main.java:801)
>        at org.apache.tools.ant.Main.startAnt(Main.java:218)
>        at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
>        at org.apache.tools.ant.launch.Launcher.main(Launcher.java:
> 109)
>
> Total time: 1 second
>
> =====================================================================
>
> build.xml
> =======
>
> <?xml version="1.0" encoding="utf-8"?>
> <project name="YumFlixMobile" default="precommit"
> xmlns:android="antlib:com.googlecode.androidant">
>
>        <!-- Requires ant 1.7 or better -->
>
>        <property environment="env"/>
>        <condition property="android-home" value="$
> {env.ANDROID_HOME}">
>                <isset property="env.ANDROID_HOME"/>
>        </condition>
>
>        <property name="android-ant.jar" location="lib/android-
> ant.jar"/>
>        <taskdef uri="antlib:com.googlecode.androidant"
>                resource="com/googlecode/androidant/antlib.xml"
> classpath="${android-ant.jar}"/>
>
>        <!-- Dependencies -->
>
>        <fileset dir="lib" id="main.jars">
>                <include name="positron.jar"/>
>        </fileset>
>
>        <fileset dir="lib" id="test.jars">
>                <include name="positron.jar"/>
>                <include name="junit.jar"/>
>        </fileset>
>
>        <!-- Rules -->
>
>        <target name="clean" description="Delete the output
> directories.">
>                <delete dir="target"/>
>        </target>
>
>        <target name="resource-src" description="Generate the R.java
> file for this project's resources.">
>                <android:aapt>
>                        <arg value="package"/>
>                        <arg value="-m"/>
>                        <arg value="-J"/>
>                        <arg file="src"/> <!-- Create R.java in the
> source directory -->
>                        <arg value="-M"/>
>                        <arg file="AndroidManifest.xml"/>
>                        <arg value="-S"/>
>                        <arg file="res"/>
>                        <arg value="-I"/>
>                        <arg file="${android-home}/android.jar"/>
>                </android:aapt>
>        </target>
>
>        <target name="compile-main" depends="resource-src"
> description="Compile the java source.">
>                <mkdir dir="target/main-classes"/>
>                <javac encoding="ascii" target="1.5" debug="true"
> extdirs=""
>                                srcdir="."
>                                destdir="target/main-classes"
>                                bootclasspath="${android-home}/
> android.jar">
>                        <classpath>
>                                <fileset refid="main.jars"/>
>                        </classpath>
>                </javac>
>        </target>
>
>        <target name="dex" depends="compile-main" description="Convert
> the .class files into .dex files.">
>                <property name="classes.dex" location="target/
> classes.dex"/>
>                <android:dx inputref="main.jars">
>                        <arg value="--dex"/>
>                        <arg value="--output=${classes.dex}"/>
>                        <arg path="target/main-classes"/>
>                </android:dx>
>        </target>
>
>        <target name="package-res" description="Put the project's
> resources into the output package file.">
>                <android:aapt>
>                        <arg value="package"/>
>                        <arg value="-f"/>
>                        <arg value="-M"/>
>                        <arg file="AndroidManifest.xml"/>
>                        <arg value="-S"/>
>                        <arg file="res"/>
>                        <!-- No assets directory -->
>                        <arg value="-I"/>
>                        <arg file="${android-home}/android.jar"/>
>                        <arg value="-F"/>
>                        <arg file="target/notepad.ap_"/>
>                </android:aapt>
>        </target>
>
>        <target name="package-apk" depends="dex, package-res"
> description="Package the application and sign it with a debug key.">
>                <android:apk-builder>
>                        <arg file="target/notepad.apk"/>
>                        <arg value="-z"/>
>                        <arg file="target/notepad.ap_"/>
>                        <arg value="-f"/>
>                        <arg file="target/classes.dex"/>
>                        <arg value="-rf"/>
>                        <arg file="src"/>
>                        <arg value="-rj"/>
>                        <arg file="lib"/>
>                </android:apk-builder>
>        </target>
>
>        <target name="start-emulator" description="Start an
> emulator.">
>                <android:adb><arg value="start-server"/></android:adb>
>                <android:start-emulator name="emulator">
>                        <arg line="-skin 320x480 -no-boot-anim"/>
>                </android:start-emulator>
>        </target>
>
>        <target name="stop-emulator" description="Stop the emulator we
> started.">
>                <android:stop-emulator name="${emulator}"/>
>        </target>
>
>        <target name="install" depends="package-apk, start-emulator"
> description="Install the package on the default emulator.">
>                <android:adb>
>                        <arg value="-s"/>
>                        <arg value="${emulator}"/>
>                        <arg value="install"/>
>                        <arg value="-r"/>
>                        <arg file="target/notepad.apk"/>
>                </android:adb>
>        </target>
>
>        <target name="demo" depends="install" description="Run the
> application until Return is hit.">
>                <input>Have fun with the demo, press Return when
> you're done.</input>
>        </target>
>
>        <target name="compile-stories" depends="compile-main"
> description="Compile the stories.">
>                <mkdir dir="target/story-classes"/>
>                <javac target="1.5" debug="true" srcdir="stories"
> destdir="target/story-classes">
>                        <classpath>
>                                <pathelement location="target/main-
> classes"/>
>                                <fileset refid="test.jars"/>
>                                <pathelement location="${android-home}/
> android.jar"/>
>                        </classpath>
>                </javac>
>        </target>
>
>        <target name="run-stories" depends="compile-stories, install">
>                <mkdir dir="target/junit-reports"/>
>                <junit haltonfailure="true" fork="true"
> forkMode="once" printsummary="true">
>                        <sysproperty
> key="positron.instrumentedPackage" value="com.example.android.notepad"/
>>
>                        <sysproperty key="positron.apk" file="target/
> notepad.apk"/>
>
>                        <formatter type="plain"/>
>                        <batchtest todir="target/junit-reports">
>                                <fileset dir="target/story-classes"/>
>                        </batchtest>
>                        <classpath>
>                                <pathelement location="target/main-
> classes"/>
>                                <fileset refid="test.jars"/>
>                                <pathelement location="${android-home}/
> android.jar"/>
>                        </classpath>
>                </junit>
>        </target>
>
>        <target name="precommit" depends="clean, run-stories, stop-
> emulator" description="If this passes you are safe to commit."/>
>
> </project>
>
> =====================================================================
>
>
> Thanks
> Veradis
>
> --
> You received this message because you are subscribed to the Google
> Groups "Android Developers" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/android-developers?hl=en
>



-- 
Xavier Ducrohet
Android SDK Tech Lead
Google Inc.

Please do not send me questions directly. Thanks!

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to