2011-11-29 20 views
5

क्या फ़ाइल ऑब्जेक्ट (फ़ाइल ऑब्जेक्ट पर कास्ट निर्भरता) के रूप में विशिष्ट निर्भरता का उपयोग करने का एक शानदार तरीका है। किसी फ़ाइल को किसी कार्य/चींटी कार्य इत्यादि के लिए तर्क के रूप में पास करने की आवश्यकता होती है मैंने configurations.myDependency.files.iterator().next() के साथ मेरी सहायता की लेकिन यह बहुत सहज नहीं दिखता है।निर्भरता का उपयोग फ़ाइल ऑब्जेक्ट के रूप में कैसे करें?

उत्तर

7

मुझे लगता है कि आपका मतलब कॉन्फ़िगरेशन निर्भरता नहीं है। मान लें कि आप की तरह कुछ है:

configurations{ 
    myConf 
} 

dependencies{ 
    myConf 'mydep:mydep:1.0' 
} 

फिर, यदि आपको विश्वास है वहाँ (वापसी प्रकार File है) तो आप क्या कर सकते हैं configurations.myConf.singleFilemyConf के लिए अपनी निर्भरता के सभी में केवल एक फ़ाइल होने जा रहा है।

हालांकि, चूंकि कॉन्फ़िगरेशन में आपके कोड को और अधिक मजबूत बनाने के लिए कई फ़ाइलों को शामिल किया जा सकता है, इसलिए आपको configurations.myConf.files में सभी फ़ाइलों पर पुनरावृत्ति करना चाहिए (वापसी का प्रकार Set<File> है)।

आप एक विन्यास आप की तरह कुछ कर सकते हैं से विशिष्ट निर्भरता जार को निकालने के लिए की जरूरत है:

configurations.myConf.files { dep -> dep.name == 'mydep' } 

जहां dep प्रकार Dependency और वापसी प्रकार की है Set<File> है।

अधिक जानकारी के लिए Configuration javadoc देखें।

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