Чтобы найти решение и сделать его простым, я написал сценарий для имитации ситуации одновременной сборки в нескольких процессах Maven локально на Mac OS, как это.
Код: Выделить всё
task(){
cd "$1"; pwd;
mvn -gs /Users/xx/settings-pre.xml clean package -Dmaven.repo.local=/Users/xx/.m2/repository -DskipTests -e -U
}
## clean local repo before concurrent build
rm -rf /Users/xx/.m2/repository
## set maven env
source ~/newwork/script/set_maven_3.5.0.sh
## I've got 10 project with same code in current dir
## so mvn clean package will be executed in project1, project2.... project10
for d in ./*/; do
## task will be exec concurrently
task "$d" &
done
Я пробовал Maven-3.9.0 с именем Lock (https://maven.apache.org/resolver/maven ... index.html), но все еще не удалось.
Код: Выделить всё
mvn -gs /Users/ninan/work/apache-maven-3.8.5/conf/settings-pre.xml clean package -Dmaven.repo.local=/Users/ninan/.m6/repository -DskipTests -e -U -Daether.syncContext.named.factory=file-lock -Daether.syncContext.named.nameMapper=file-gav -Daether.syncContext.named.time=120
1 Интересно, что -то не так с моим локальным методом тестирования, как я использую Lock в неправильном способе и т. Д.
2, если не, что я не знаю. /> thanks.
Подробнее здесь: https://stackoverflow.com/questions/754 ... n-ci-syste