2015-12-14 7 views
9

में प्रतिलिपि कार्य का उपयोग कर निर्देशिका की प्रतिलिपि बनाने के लिए कैसे मैं एक प्रतिलिपि कार्य में किसी अन्य निर्देशिका में फ़ाइलों और संपूर्ण निर्देशिकाओं की एक प्रतिलिपि बनाना चाहता हूं। मैं अलग-अलग फाइलों की प्रतिलिपि बना सकता हूं, और निर्देशिका निर्देशिकाओं की प्रतिलिपि बना सकता हूं, लेकिन मैं निर्देशिका को कैसे कॉपी करूं?प्रतिलिपि

यह मेरा काम नहीं है:

task myTask(type: Copy) { 
    from 'path/to/file' 
    from 'path/to/dir' 
    into 'path/to/target' 
} 

जो प्रतियां फ़ाइल ठीक है, लेकिन dir में केवल वे फ़ाइलें। मैं path/to/target/dir में डीआईआर की सामग्री के साथ समाप्त करना चाहता हूं (path/to/target में नहीं)।

मैं का उपयोग करके एक काम के आसपास पाया:

task myTask(type: Copy) { 
    from 'path/to/file' 
    from 'path/to' 
    into 'path/to/target' 
    include 'dir' 
} 

लेकिन उस नाम टकराव की संभावना है। मेरे पास वास्तव में कॉपी करने के लिए कई फाइलें और डीआईआर हैं, और मैं इसे एक कार्य बनाना चाहता हूं।

उत्तर

5

एक किताब है कि Gradle वेबसाइट पर डाउनलोड के लिए उपलब्ध है नहीं है here या "नि: शुल्क ईबुक प्राप्त करें" पर क्लिक करें here: "मूलभूत परे परे" जो पृष्ठ 3 (पर आपके प्रश्न का सीधा जवाब प्रदान करता है निर्देशिका संरचना)।

अपने उदाहरण पर लागू समाधान के रूप में निम्नानुसार होगा:

task myTask(type: Copy) { 
     from 'path/to/file' 
     from 'path/to/dir' { 
      into 'dir' 
     } 
     into 'path/to/target' 
    } 

सीमा यह है कि यह गतिशील स्रोत से दूसरे स्तर लक्ष्य निर्देशिका (dir) के नाम का निर्धारण नहीं होगा, लेकिन यह है एक साफ दृष्टिकोण।

+0

वाह करने का कोई तरीका नहीं है, यह मेरे उत्तर – AdamSkywalker

+0

@adam से बहुत अलग है, यह आपके से बेहतर समाधान है, क्योंकि यह है अधिक "ओओ" - व्यवहार का अनुकूलन कमांड में निहित है, जबकि आपका कॉलबैक की तरह है या दूसरा कमांड – Bohemian

+0

@ बोहेमियन में मैं एक ही ऑर्डर में एक ही 4 लाइनों को देखता हूं :) – AdamSkywalker

5

एकमात्र समाधान मैं आपकी समस्या के लिए पता है:

task myTask(type: Copy) { 
    into 'path/to/target' 
    from 'path/to/file' 

    into ('dir') { 
     from 'path/to/dir'   
    } 
} 

ध्यान रखें कि into: ('dir') निर्माण path/to/target/ स्थान पर अपेक्षाकृत काम करता है

+0

यह एक सुधार है, लेकिन मुझे विश्वास नहीं है कि यह ठीक से/बस – Bohemian

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