2013-01-24 13 views
5

मैं चींटी के माध्यम से सरल एंड्रॉइड प्रोजेक्ट बनाने की कोशिश कर रहा हूं। विन्यास:: डी: \ विकास \ Eclipse_workspace \ HelloWorld \ रेस \ मूल्यों \ styles.xml: 7: त्रुटि: त्रुटि यहाँ मेरी चींटी स्क्रिप्टएंटी के साथ एंड्रॉइड ऐप केवल

<?xml version="1.0" encoding="UTF-8"?> 
    <project name="HelloWorld" default="help"> 

    <!-- Input directories --> 
    <property name="source.dir" value="src" /> 
    <property name="source.absolute.dir" location="${source.dir}" /> 
    <property name="gen.dir" value="gen" /> 
    <property name="gen.absolute.dir" location="${gen.dir}" /> 
    <property name="resource.dir" value="res" /> 
    <property name="resource.absolute.dir" location="${resource.dir}" /> 
    <property name="asset.dir" value="assets" /> 
    <property name="asset.absolute.dir" location="${asset.dir}" /> 

    <!-- Directory for the third party java libraries --> 
    <property name="external.libs.dir" value="libs" /> 
    <property name="external.libs.absolute.dir" location="${external.libs.dir}" /> 

    <!-- Output directories --> 
    <property name="out.dir" value="ant"/> 
    <property name="out.absolute.dir" location="${out.dir}/bin"/> 
    <property name="out.classes.absolute.dir" value="${out.absolute.dir}/classes"/> 

    <property name="sdk.dir" value="../../AndroidSDK"/> 
    <property name="sdk.absolute.dir" location="${sdk.dir}"/> 

    <property name="android.jar" value="${sdk.absolute.dir}/platforms/android-8"/> 

    <!-- The final package file to generate --> 
    <property name="out.debug.unaligned.package" 
        location="${out.absolute.dir}/${ant.project.name}-debug-unaligned.apk" /> 
    <property name="out.debug.package" 
        location="${out.absolute.dir}/${ant.project.name}-debug.apk" /> 
    <property name="out.unsigned.package" 
        location="${out.absolute.dir}/${ant.project.name}-unsigned.apk" /> 
    <property name="out.unaligned.package" 
        location="${out.absolute.dir}/${ant.project.name}-unaligned.apk" /> 
    <property name="out.release.package" 
        location="${out.absolute.dir}/${ant.project.name}-release.apk" /> 

    <!-- Verbosity --> 
    <property name="verbose" value="true" /> 

    <condition property="v.option" value="-v" else=""> 
     <istrue value="${verbose}" /> 
    </condition> 

    <!-- tools location --> 
    <property name="android.tools.dir" location="${sdk.absolute.dir}/tools" /> 
    <property name="android.platform.tools.dir" location="${sdk.absolute.dir}/platform-tools" /> 
    <condition property="exe" value=".exe" else=""><os family="windows" /></condition> 
    <condition property="bat" value=".bat" else=""><os family="windows" /></condition> 
    <property name="adb" location="${android.platform.tools.dir}/adb${exe}" /> 
    <property name="zipalign" location="${android.tools.dir}/zipalign${exe}" /> 
    <property name="aidl" location="${android.platform.tools.dir}/aidl${exe}" /> 
    <property name="aapt" location="${android.platform.tools.dir}/aapt${exe}" /> 
    <property name="dx" location="${android.platform.tools.dir}/dx${bat}" /> 

    <!-- Generates the R.java file for this project's resources. --> 
    <target name="resource-src" depends="dirs"> 
     <echo>Generating R.java, Manifest.java from the resources...</echo> 
     <exec executable="${aapt}" failonerror="true"> 
      <arg value="package" /> 
      <arg line="${v.option}" /> 
      <arg value="-m" /> 
      <arg value="-J" /> 
      <arg path="${gen.absolute.dir}" /> 
      <arg value="-M" /> 
      <arg path="AndroidManifest.xml" /> 
      <arg value="-S" /> 
      <arg path="${resource.absolute.dir}" /> 
      <arg value="-I" /> 
      <arg path="${android.jar}" /> 
     </exec> 
    </target> 

    <!-- Generates java classes from .aidl files. --> 
    <target name="aidl" depends="dirs"> 
     <echo>Compiling aidl files into Java classes...</echo> 
     <apply executable="${aidl}" failonerror="true"> 
      <arg value="-p${android.aidl}" /> 
      <arg value="-I${source.absolute.dir}" /> 
      <arg value="-o${gen.absolute.dir}" /> 
      <fileset dir="${source.absolute.dir}"> 
       <include name="**/*.aidl" /> 
      </fileset> 
     </apply> 
    </target> 

    <target name="compile" depends="resource-src, aidl" description="Compiles project's .java files into .class files"> 
     <javac destdir="${classes.absolute.dir}" > 
      <src path="${source.absolute.dir}" /> 
      <src path="${gen.absolute.dir}" /> 

      <classpath> 
       <fileset dir="${external.libs.absolute.dir}" includes="*.jar" /> 
      </classpath> 
     </javac> 
    </target> 

    <target name="clean" description="Removes output files created by other targets."> 
     <delete dir="${out.absolute.dir}" verbose="${verbose}" /> 
     <delete dir="${gen.absolute.dir}" verbose="${verbose}" /> 
    </target> 

    <!-- Creates the output directories if they don't exist yet. --> 
    <target name="dirs"> 
     <echo>Creating output directories if needed...</echo> 
     <mkdir dir="${resource.absolute.dir}" /> 
     <mkdir dir="${external.libs.absolute.dir}" /> 
     <mkdir dir="${gen.absolute.dir}" /> 
     <mkdir dir="${out.absolute.dir}" /> 
     <mkdir dir="${out.classes.absolute.dir}" /> 
    </target> 

</project> 

यह स्क्रिप्ट कोड ब्लॉक <target name="resource-src" depends="dirs"> पर विफल रहता है और मैं इस तरह के संदेशों मिलता है आइटम के लिए अभिभावक को पुनर्प्राप्त करना: कोई भी संसाधन नहीं मिला जो दिए गए नाम 'एंड्रॉइड से मेल खाता है: थीम। लाइट' डी: \ विकास \ Eclipse_workspace \ HelloWorld \ res \ values-v11 \ styles.xml: 7: त्रुटि: आइटम के लिए अभिभावक को पुनर्प्राप्त करने में त्रुटि: कोई संसाधन नहीं मिला जो दिए गए नाम 'एंड्रॉइड: थीम.होलो.लाइट' से मेल खाता है। डी: \ विकास \ Eclipse_workspace \ HelloWorld \ res \ values-v14 \ styles.xml: 8: त्रुटि: आइटम के लिए अभिभावक को पुनर्प्राप्त करने में त्रुटि: कोई संसाधन नहीं मिला जो दिए गए नाम 'एंड्रॉइड: थीम.होलो.लाइट.डार्कएक्शनबार' से मेल खाता है।

यदि मैं ग्रहण का उपयोग करके ऐप का निर्माण करता हूं - यह ठीक है, ऐप ठीक बनाया गया है।

तो, क्या गलत है? मेरे द्वारा यह कैसे किया जा सकता है?

+0

अपने 'project.properties' फ़ाइल में' target' का मूल्य क्या है निष्पादित है? – CommonsWare

उत्तर

6

आप इसे कठिन तरीके से कर रहे हैं। एंड्रॉइड में आपके प्रोजेक्ट के लिए चींटी बिल्ड स्क्रिप्ट बनाने के लिए टूल्स हैं। बस अपनी परियोजना फ़ोल्डर से

android update project --path . 

इस चलाने के लिए, (android आदेश <sdk folder>/tools में है)।

इससे build.xml और कई अन्य संपत्तियों की फाइलें बनाई जाएंगी। android कमांड के विस्तृत उपयोग के लिए, documentation on managing projects from the command line देखें।

+2

मैं उपयोग कर रहा हूं आईडीई के बावजूद परियोजनाओं का निर्माण करना चाहता हूं। क्या आप साझा कर सकते हैं कि यह आदेश 'एंड्रॉइड अपडेट प्रोजेक्ट - पाथ' कैसे काम करता है? क्या प्रोजेक्ट (स्रोत, जीन, संपत्ति, libs, res) के लिए ग्रहण करता है या किसी भी परियोजना संरचना के साथ काम करने के लिए इसे अनुकूलित किया जा सकता है, इस तरह की निर्देशिका संरचना की आवश्यकता है? – konunger

+0

मेरे द्वारा पोस्ट किए गए लिंक में अधिक जानकारी है जो मैं आपको यहां दे सकता हूं। मेरा अनुमान है कि हाँ यह एक मानक एंड्रॉइड परियोजना संरचना पर निर्भर करता है। जीन/एसेट्स/रेस/इत्यादि ग्रहण की बात नहीं हैं, वे एक एंड्रॉइड चीज हैं और आपकी परियोजना को सिरदर्द शुरू करना चाहिए या देना चाहिए। –

+0

धन्यवाद, मुझे निर्णय मिला है – konunger

0

मान लें आप के लिए एंड्रॉयड एसडीके \ उपकरण फ़ोल्डर चींटी .Go स्थापित करें और निम्न आदेश

android update project --target android-18 --path "path to the project" it will generate the build.xml file.

संबंधित मुद्दे