2010-07-13 12 views
10

मेरे पास चींटी और पर्यावरण चर के उपचार के बारे में एक सवाल है। उदाहरण के लिए मेरे पास एक छोटा सा नमूना है।क्या चींटी एक गुण फ़ाइल से पर्यावरण चर का विस्तार कर सकते हैं?

चींटी निर्माण फ़ाइल test.xml को देखते हुए:

<project name="myproj" default="testProps"> 

    <property environment="env"/> 

    <target name="testProps"> 
      <echo message="${env.MyEnvVar}"/> 
      <echo message="${MY_PROPERTY}"/> 
    </target> 
</project> 

और गुण फ़ाइल test.props:

MY_PROPERTY=${env.MyEnvVar} 

अब कुछ मूल्य के लिए वातावरण चर MyEnvVar सेट (मेरे मामले में foo) और इस कमांड लाइन का उपयोग करके चींटी चलाएं:

ant -f test.xml -propertyfile test.props testProps 

मुझे प्राप्त होने वाला आउटपुट है:

[echo] foo 
[echo] ${env.MyEnvVar} 

मैं जानना चाहूंगा क्या वहाँ इनपुट गुण ऐसा है कि मैं

[echo] foo 
[echo] foo 

है कि मिल फ़ाइल संरचना करने के लिए किसी भी तरह से है कि क्या है, मैं प्रोपर्टीज के वातावरण चर के लिए इच्छित नाम फ़ाइल जिसे एंटी स्क्रिप्ट के भीतर बदल दिया गया है। नोट - मुझे पता है कि कैसे पर्यावरण चर का उपयोग सीधे करें (जैसा कि यहां किया गया है)। मुझे जो करना है वह चींटी स्क्रिप्ट्स के एक सेट का उपयोग करना है जो एक ऐसे वातावरण में संपत्तियों का एक संग्रह की अपेक्षा करता है जो अलग-अलग नामों का उपयोग करके समान गुणों को परिभाषित करता है। इस प्रकार एक संपत्ति फ़ाइल में उन्हें "ब्रिजिंग" का विचार।

मैं चींटी संस्करण 1.6.5 का उपयोग कर रहा हूं।

उत्तर

22

आप के बाद पर्यावरण test.props संपत्ति फ़ाइल पढ़ने की जरूरत है - आप, यानि कि एक और property कार्य का उपयोग कर ऐसा कर सकता है अपने मौजूदा property environment कार्य के बाद

<property file="test.props" /> 

जोड़ें।

पूर्ण में:

<property environment="env" /> 
<property file="test.props" /> 

<target name="testProps"> 
    <echo message="${env.MyEnvVar}"/> 
    <echo message="${MY_PROPERTY}"/> 
</target> 

जब आप गुण आपूर्ति आदेश पंक्ति इस बिल्ड की सामग्री से पहले संसाधित हो जाता है पर फ़ाइल, लेकिन उस समय ${env.MyEnvVar} पर अभी तक सेट नहीं है।

+2

बिल्कुल वही नहीं जो मैं उम्मीद कर रहा हूं, लेकिन यह काम करता है। देखना है कि मैं यह काम कर सकता हूं या नहीं। जानकारी के लिए धन्यवाद। – sfitts

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