की व्याख्या कैसे करें मैं ग्रैडल सीखने की कोशिश कर रहा हूं। सीखने की मेरी पसंदीदा शैली को कम स्तर पर समझना है कि क्या हो रहा है। इसके लिए मैं व्याख्या करने के लिए क्या DSL reference:ग्रैडल डीएसएल
task hello {
doLast {
println 'Hello world!'
}
}
मैं समझता हूँ कि इस स्क्रिप्ट एक Project
के संदर्भ में निष्पादित किया जाता है के संबंध में दस्तावेज की example 6.1 में हो रहा है कोशिश कर रहा हूँ। तो मैं Project
documentation से देख सकता हूं कि कई ओवरलोडेड task(...)
विधियां हैं। हस्ताक्षर को देखते हुए, मुझे उस व्यक्ति को चुनना होगा जिस पर अंतिम तर्क के रूप में बंद हो। और चूंकि हम यहां Map
पास नहीं कर रहे हैं, इसलिए मुझे लगता है कि जिस विधि को बुलाया जा रहा है वह task(String name, Closure closure)
है।
हालांकि, जिस हिस्से में मैं संघर्ष कर रहा हूं वह इस स्क्रिप्ट में, शाब्दिक स्ट्रिंग hello
को String
पर मैप किया गया है।
एक और उदाहरण example 6.7 है:
task taskX(dependsOn: 'taskY') << {
println 'taskX'
}
task taskY << {
println 'taskY'
}
यहाँ, मैं हम विधि का task(Map<String, ?> args, String name)
प्रपत्र कॉल कर रहे हैं मान। लेकिन,
- फिर, कैसे शाब्दिक स्ट्रिंग
taskX
ऊपर एकString
के रूप में खत्म हो रहा है? - यह देखते हुए कि
Map
शाब्दिक बनाने के लिए ब्रांड्स का उपयोग नहीं किया जाता है, तो ब्रांड्स में भागMap
होने का अंत कैसे होता है? - यदि मैंने सही तरीके से यह पता लगाया है कि कौन सी विधि कह रही है, तो क्या डीएसएल दस्तावेज की तुलना में स्क्रिप्ट में गलत क्रम में दिए गए तर्क नहीं हैं?
- कोष्ठक का उपयोग कर वाक्यविन्यास एक विधि कॉल की तरह पूरी दुनिया के लिए दिखता है। अज्ञात विधि के रूप में
taskX
को हल करने के लिएProject
ऑब्जेक्ट पर प्रतिनिधिमंडल का संकेत हो सकता है। लेकिन, AFAIK, विधिवत कॉल कोtask
पर विधि कॉल के तुरंत बाद विधिवत रूप से मान्य नहीं किया जाएगा।
जैसा कि आप देख सकते हैं कि मैं थोड़ा उलझन में हूं कि कैसे उदाहरण वाक्यविन्यास डीएसएल संदर्भ मार्गदर्शिका के लिए नीचे नक्शा करता है, जो वास्तव में समझने के लिए थोड़ा मुश्किल बना रहा है कि घास के स्तर पर क्या हो रहा है ।
धन्यवाद!
मुझे आपके जैसा ही भ्रम है। और मुझे उम्मीद है कि ग्रेडलेवेयर कुछ स्पष्टीकरण प्रदान कर सकता है। – peacepassion
यह पूछताछ अधिक जानकारी हो सकती है। [ग्रोवी कार्य परिभाषा में ग्रोवी सिंटैक्स] (http://stackoverflow.com/questions/27584463/understanding-the-groovy-syntax-in-a-gradle-task-definition/27584555#27584555) – user3875388
संभावित डुप्लिकेट [समझना एक ग्रेडल कार्य परिभाषा में ग्रोवी सिंटैक्स] (https://stackoverflow.com/questions/27584463/understanding-the-groovy-syntax-in-a-gradle-task-definition) – tkruse