चींटी निर्माण स्क्रिप्ट, एंटीकॉल, निर्भरता, आदि

मेरे पास एक बिल्ड स्क्रिप्ट है और उस स्क्रिप्ट के हिस्से के रूप में यह एक जार फ़ाइल को एक निर्देशिका में कॉपी करता है, आसानी से इसे यूटिल जार कहते हैं। utils जार एक और निर्देशिका में बैठे एक और निर्माण स्क्रिप्ट द्वारा बनाया गया है। मैं क्या करने की कोशिश कर रहा हूं, मेरी बिल्ड स्क्रिप्ट यूटिल बिल्ड स्क्रिप्ट चलाती है ताकि मैं सुनिश्चित कर सकूं कि यूटिल जार अद्यतित है।

तो मुझे पता है कि मुझे utils बिल्ड फ़ाइल आयात करने की आवश्यकता है।


जो काम नहीं करता है क्योंकि आयात कार्य, लगभग हर दूसरे चींटी के विपरीत, आधार से नहीं चलता है, यह पीडब्ल्यूडी से चलता है। तो चारों ओर घूमने के लिए मेरे पास यह छोटा सा रंग है, जो सफलतापूर्वक बिल्ड फ़ाइल आयात करता है

  
  

तो अब जब मैंने अपनी आयात समस्या हल की है तो मुझे कार्य को कॉल करने की ज़रूरत है, ठीक है कि यह सही होना चाहिए:


ध्यान दें कि उपरोक्त में, utils ../ utils/build/build.xml का प्रोजेक्ट नाम है

जिस समस्या में मैं अब चल रहा हूं वह यह है कि चींटी कॉल ../utils/build में निष्पादित नहीं होता है, इसलिए मुझे जो चाहिए, और नहीं मिल सकता है, एक रनेट संपत्ति या कुछ समान है, अनिवार्य रूप से:


मुझे इसकी आवश्यकता का कारण यह है कि मेरे यूटिल में जार में कॉपी करने के लिए कौन सा कोड चुनने के लिए चरण को फ़ाइल बनाने के लिए सापेक्ष पथ पर आधारित है ताकि मेरी चींटी फ़ाइल में हार्डकोडिंग पथ से बचें। कोई विचार?

0
ro fr bn

3 उत्तर

मेरे पास कुछ समान सेट अप है: मेरे पास एक मुख्य चींटी build.xml है जो एक अलग build.xml को कॉल करता है जो मेरे परीक्षणों का निर्माण करने का ख्याल रखता है। यह मेरा इसे करने का तरीका है:


    
      
    

यह चाल <कोड के बजाय subant का उपयोग करना है > antcall । आपको अन्य बिल्ड फ़ाइल आयात करने की आवश्यकता नहीं है।

0
जोड़ा
यदि आपको उपांत लक्ष्य में कक्षापथ समायोजित करने की आवश्यकता है तो क्या होगा?
जोड़ा लेखक Stephane Grenier, स्रोत

आप एंटीकॉल ब्लॉक में नेस्टेड का उपयोग करके एंटीकॉल पर पैरा को पास कर सकते हैं। तो, आप गुणों को इस तरह से पारित कर सकते हैं (शायद यहां तक ​​कि आधार पर भी गुणक अपरिवर्तनीय हैं)।

0
जोड़ा

"Antcall" कार्य के बजाए "चींटी" कार्य का उपयोग करने का प्रयास करें, जो चलता है मौजूदा बिल्ड फ़ाइल में आयात करने के बजाय सीधे आयातित निर्माण। इसमें एक "डीआईआर" पैरामीटर है:

एक आधार के रूप में उपयोग करने के लिए निर्देशिका   नई चींटी परियोजना के लिए। के लिए डिफ़ॉल्ट   वर्तमान परियोजना के आधार पर, जब तक   वारिसल को झूठा सेट किया गया है, में   जो मामला यह डिफ़ॉल्ट नहीं है   मूल्य। यह आधार पर ओवरराइड करेगा   बुलाए गए प्रोजेक्ट की सेटिंग।

तो आप कर सकते हैं:


या कुछ इस तरह का।

0
जोड़ा
उस <चींटी ... को
जोड़ा लेखक Ben Clark-Robinson, स्रोत