2009-01-09 8 views
8

पर वरीयता दी तो मैं इस तरह एक फ़ाइलसेट शामिल। [चूंकि इस काल्पनिक उदाहरण के लिए, zar.class कक्षाओं में है dir] मैं ज़ार फ़ाइल को शामिल करना चाहता हूं, भले ही यह कक्षाओं में है।कैसे एक चींटी के लिए फ़ाइलसेट एक को बाहर

मैंने थोड़ी देर के लिए इस के खिलाफ अपने सिर को टक्कर लगी, चयनकर्ताओं, पैटर्न, फाइलसेट्स, फाइलों को गठबंधन करने की कोशिश करने आदि के बारे में पढ़ना, लेकिन यह काम नहीं कर सका।

कोई भी यह कैसे जानता है?

उत्तर

2

मुझे यकीन है कि आप क्या चाहते हैं नहीं कर रहा हूँ, लेकिन मुझे लगता है कि आप सही रास्ते pattersets को देख रहे थे: कैसे के बारे में:

<patternset id="a"> 
    <exclude name="classes/*"/> 
</patternset> 

<patternset id="b"> 
    <include name="**/zar.class"/> 
</patternset> 

<fileset dir="."> 
    <patternset refid="a" /> 
    <patternset refid="b" /> 
</fileset> 
4

क्यों जिसे आप बाहर तत्व की जरूरत है?/कक्षाओं में zar.class, और अन्य .class फ़ाइलों में से कोई भी:

<fileset dir="."> 
    <include name="**/zar.class"/> 
</fileset> 

आप फ़ाइलों का सही सेट आप के बाद कर रहे हैं देना चाहिए।


बस समुदाय विकी मोड में इस डाल दिया, क्योंकि मुझे यकीन है कि नहीं कर रहा हूँ, दूसरी सोचा पर, कि यह वास्तव में है कि आप के बाद क्या कर रहे हैं:
आप चाहते हो सकता है सब कुछ कक्षाओं सहित, /.../ zar.class, कक्षाओं को छोड़कर/....

मेरा समाधान केवल आपको zar.class देगा।

कृपया एक टिप्पणी छोड़ दो: यदि यह एक अच्छा समाधान नहीं है, तो मैं इसे हटा दूंगा।

1

मूल प्रश्न में चींटी का कौन सा संस्करण उपयोग किया गया था?

चींटी 1.8.2 के साथ, stanza वांछित परिणाम का उत्पादन करता है!

<fileset dir="." id="some.fileset"> 
    <exclude name="build/classes/*" /> 
    <include name="**/A.class" /> 
</fileset> 

<target name="test"> 
    <pathconvert pathsep="${line.separator}" property="listed.fileset" refid="some.fileset"/> 
    <echo message="${listed.fileset}" /> 
</target> 

पथ और नाम थोड़ा अलग है, लेकिन इस A.class दिखाने करता है, और B.class है, जो सही उसके बगल में है नहीं दिखाने करता है।

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

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