查找包含pom.xml文件的所有子目录的命令是什么,然后执行: mvn干净 在该子目录中的操作?
我有包含多个maven项目的工作区,我想清理所有这些
答案 0 :(得分:33)
这样的事情应该可行:
找到。 -name“pom.xml”-exec mvn clean -f'{}'\;答案 1 :(得分:2)
一般来说,您可能希望在父pom上发出mvn clean
,这也会清除定义为模块的所有子项。
如果您没有并且不想要这样的父母,那么您需要使用暴力,这意味着类似
for dir in yourdirectory;
do
cd $dir
if [ -f pom.xml ];
then
mvn clean
fi
done
答案 2 :(得分:1)
我正在使用这个脚本,它仅在那些必须清理的项目上调用mvn clean
(它们有一个target
目录):
find . -name "target" -type d \
| sed s/target/pom.xml/ \
| tee /dev/stderr \
| xargs -I {} mvn -q clean -f {}
tee
部分是可选的,它只打印出正在清理的项目。
答案 3 :(得分:0)
find . -maxdepth 2 -name "pom.xml" -exec mvn clean -f '{}' \;
点个赞 'cleanRepo.sh'
在 unix-terminal 或 windows 上的 git-bash 中执行:
sh cleanRepo.sh
对我来说这最有效,因为我只处理多模块项目。