2013-04-09 67 views

回答

23

像這樣的東西或許應該工作:

找 。 -name「pom.xml」-exec mvn clean -f'{}'\;

+0

這個神奇的幫助我,謝謝! – 2017-01-20 00:27:59

+0

加入'-type f'會使這個完美 – 2017-11-06 08:42:55

+0

爲什麼?如果有一個名爲'pom.xml'的目錄? – Mzzl 2017-11-07 09:38:17

2

一般的,你會想發出父POM,這將清理定義爲模塊的所有兒童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部分是可選的,它只是打印出來的項目,正在清理。

相關問題