2012-05-31 3 views
1

У меня есть работа Дженкинс работает Maven на главной машинеSonar ищет артефакты в неправильном хранилище Maven

Я добавил шаг после сборки для запуска эхолота и указал его проект pom.xml.

Проблема в том, что сборка Jenkins работает на master, а сервер Sonar работает на другой машине. Поэтому, когда сборка заканчивается, Sonar ищет артефакты сборки в репозитории, где она установлена ​​вместо мастер-машины, где Дженкинс управлял Maven.

Есть ли обходной путь, который затем устанавливал как Sonar, так и Jenkins на той же машине?

Подробнее:

[ERROR] Failed to execute goal on project server-api: Could not resolve dependencies for project frm:frm-server-api:jar:1.0-SNAPSHOT: Failure to find frm:frm-model:jar:1.0-SNAPSHOT in http://DIFFERENT_SERVER:7080/nexus/content/repositories/releases/ was cached in the local repository, resolution will not be reattempted until the update interval of releases has elapsed or updates are forced -> [Help 1] 

DIFFERENT_SERVER является сервер не связан с sonar сервера или Jenkins сервера, мы используем его, но не в контексте данного проекта, так что я не знаю, как он получил там. Я предполагаю, что это ошибка конфигурации. более подробная информация:

  1. Тип работы Jenkins - это общий проект, а не чистая работа на maven.
  2. Я использую плагин jenkins в качестве триггера сборки сборки и указывая pom.xml, который я использую.
  3. Я установил settings.xml в MAVEN_HOME/conf с необходимыми деталями.
+0

сервер сонара не ищет артефакты, сонар: задача сонара maven делает. сервер сонара просто сохраняет результаты. – oers

+0

@oers и сонар: задача сонара maven запускается на сервере Jenkins или работает на Sonar's? – Michael

+0

он запускается локально на вашем сервере jenkins – oers

ответ

2

Тот факт, что сервер Sonar работает на другой машине, определенно не является проблемой для запуска анализа, и у вас не должно возникнуть проблемы с анализом сонара от вашего мастера Jenkins, может ли Sonar DB и/или Sonar Server на разных машинах.

Вы просто должны убедиться, что конфигурация Вашего Дженкинс (= Sonar свойства) + конфигурации вашей машины (= потенциал брандмауэра) позволяет партии эхолота:

  1. Запрос на веб-сервере URL-Sonar
  2. Запрос сконфигурированной база данных
+0

Спасибо, это должна быть ошибка конфигурации, я думаю, я добавил больше информации в свой вопрос – Michael

+0

Я добавил необходимый профиль в 'settings.xml', мне также нужно добавить что-нибудь к моему 'pom.xml'? похоже, что он не принимает конфигурацию «sonar», которую я добавил в файл настроек – Michael

2

Моя проблема заключалась в том, что я ничего не добавляю к моему проекту pom.xml, а также я использую Maven до package фазы, где Sonar требует install артефакты в репозитории maven, чтобы они могли использовать их позже.

Итак, я побежал maven с mvn clean install -DskipTests=true, а затем использовал шаг сборки сонара.

Смежные вопросы