После переноса модуля из одного проекта в другой проверка Sonar стала падать с ошибкой:
Validation of project failed: Module {} is already part of project {}
Почему так произошло? При переносе модуля остался старый groupId и artifactId, а уникальный код модуля для Sonar по умолчанию строится как groupId:artifactId:branch_name. Ветка как была master, так и осталась master, groupId и artifactId тоже остались прежними, что привело к попытке создания модуля с уникальным кодом точно таким же, как и уже существующий в прошлом проекте, из которого модуль перенесён.
Как решить проблему? В “pom.xml” модуля нужно прописать:
1 2 3 |
<properties> <sonar.moduleKey>groupId:artifactId:someUniqueKey</sonar.moduleKey> </properties> |
Где groupId и artifactId — это группа и артефакт Maven от вашего проекта, а someUniqueKey — это просто какая-нибудь уникальная строка, чтобы Sonar смог отличить новый модуль от старого.