ठीक है, यह आसान होना चाहिए ...ग्रूवी (फ़ाइल आईओ): सभी फाइलों को खोजने के लिए और सभी फ़ाइलों को लौट - ग्रूवी तरह से
मैं ग्रूवी के लिए नया हूँ और मैं निम्नलिखित तर्क लागू करने के लिए देख रहा हूँ:
def testFiles = findAllTestFiles();
अभी तक, मैं नीचे दिए गए कोड के साथ आया हूं जो सफलतापूर्वक सभी फाइलों के नाम प्रिंट करता है। हालांकि, प्रिंटिंग के बजाय, मुझे बस उन्हें एक संग्रह में रखना होगा। बेशक, मैं इसे पुराना जावा तरीका कर सकता हूं: बस एक संग्रह को तुरंत चालू करें, सभी तत्व जोड़ें और इसे वापस करें। हालांकि, यह मुझे कुछ भी नहीं सिखाएगा।
तो आप इसे शांत, "ग्रोवी" तरीके से कैसे करते हैं?
static File[] findAllTestFiles() {
def directory = new File("src/test/java");
def closure = {File f -> if(f.name =~ /Test\.java$/) println f }
directory.eachFileRecurse FileType.FILES, closure
return null;
}
मैं जबकि अभी भी पठनीय होने यथासंभव कम कोड का उपयोग कर findAlltestFiles() ग्रूवी में लागू करने के लिए देख रहा हूँ।
मुझे लगता है कि मुझे वास्तव में फाइलों की सूची की आवश्यकता है लेकिन मैं शायद गलत हूं (क्योंकि यह मेरी पहली ग्रोवी क्लास है)। मैं आपके पहले सुझाव को और अधिक अच्छी तरह से मानूंगा - यह ** ** महान ** अंतर्दृष्टि जैसा लगता है। मुझे यह समझने के लिए खेलना होगा कि आप क्या कह रहे हैं और इसे कैसे लागू करें - यह चीजों के बारे में सोचने का एक बिल्कुल अलग तरीका है! मुझे यह पसंद है ... तेजी से मुझ पर बढ़ रहा है। – gMale
मैंने अपनी पूरी लिपि फिर से लिखी है, * बंद * के साथ डिजाइन करने की कोशिश कर रहा है। कभी-कभी, यह अभी भी मेरे सिर को गहराई से सोचने के लिए थोड़ा सा दर्द देता है। लेकिन मुझे ग्रोवी पर बेचा गया है इसलिए मुझे कुछ किताबें मिलेंगी और इस नए दृष्टिकोण को महारत हासिल करना शुरू करेंगी। मैं ग्रोवी कंसोल का उपयोग कैसे करना सीखने के लिए उत्साहित हूं ... आपकी मदद के लिए धन्यवाद। – gMale