2013-04-09 6 views
6

सभी उपनिर्देशिकाओं को खोजने के लिए आदेश क्या है जिसमें pom.xml फ़ाइल है और फिर निष्पादित करें: एमवीएन स्वच्छ उस उपनिर्देशिका में ऑपरेशन?उपनिर्देशिका में पोम ढूंढें और एमवीएन क्लीन निष्पादित करें

मैं कार्यस्थानों जिसका कई Maven परियोजना शामिल है और मैं उन्हें

उत्तर

23

कुछ कुछ अर्थ शायद काम करना चाहिए:

ढूंढो -नाम "pom.xml" -exec mvn clean -f '{}' \;

+0

इस जादू ने मेरी मदद की, धन्यवाद! –

+0

'-type f' जोड़ने से यह सही –

+0

क्यों होगा? यदि 'pom.xml' नाम की निर्देशिका है? – Mzzl

2

सामान्य रूप में सभी को साफ करने के लिए चाहते हैं, आप माता-पिता पोम, जो सभी बच्चों मॉड्यूल के रूप में परिभाषित साफ होगा पर mvn clean भी जारी करने के लिए चाहते हैं।

आप नहीं है, तो और जैसे माता-पिता आप इस के लिए जानवर बल का उपयोग करना होगा नहीं करना चाहते, इस तरह की तरह

for dir in yourdirectory; 
do 
    cd $dir 
    if [ -f pom.xml ]; 
    then 
    mvn clean 
    fi 
done 
1

मैं इस स्क्रिप्ट का उपयोग कर रहा है, यह कहता है mvn clean केवल उन परियोजनाओं है कि साफ करने पर (वे एक target निर्देशिका है):

find . -name "target" -type d \ 
| sed s/target/pom.xml/ \ 
| tee /dev/stderr \ 
| xargs -I {} mvn -q clean -f {} 

tee भाग वैकल्पिक है, यह सिर्फ परियोजना बाहर प्रिंट कि साफ किया जा रहा है।

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