У меня немного странная проблема с Дженкинсом, Мейвеном и Тихо, и трудно выяснить, кто виноват.
Все сборки, инициированные SCM, завершаются сбоем, но все сборки, запускаемые вручную, завершаются успешно.
Версия Дженкинса: Версия Дженкинса. 1.527
Версия Maven: 3.05
У меня есть модульная сборка Tycho:
<modules>
<module>../main.plugin.test</module>
<module>../main.plugin.internationalization.at</module>
<module>../crud.plugin</module>
<module>../rest.plugin</module>
<module>../main.plugin</module>
<module>../main.feature</module>
<module>../product</module>
<module>../target-definition</module>
<module>../rest.plugin.test</module>
</modules>
Jenkins настроен как простая сборка maven с модулями.
Он просто выполняет:
-X clean deploy
При запуске SCM-Build некоторые модули не собираются.
Когда я создаю его вручную, все в порядке:
Это поведение является последовательным. я уже пробовал
- переход на другую версию Maven (3.05/3.04)
- удаление всего рабочего пространства перед построением
- чистая проверка всех источников
- запуск
-X deploy
(без очистки)
Любое количество ручных вызовов завершается успешно. И любое количество триггеров scm терпит неудачу.
Оба журнала Maven выглядят одинаково, пока (работают):
[INFO] Reactor Build Order:
[INFO]
[INFO] client-master
[INFO] crud-plugin
[INFO] main-plugin
[INFO] ------------.main.plugin.test
[INFO] ------------.main.plugin.internationalization.at
[INFO] rest-plugin
[INFO] main-plugin
[INFO] ------------.product
[INFO] target-definition
[INFO] ------------.rest.plugin.test
и (неудача):
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] main-plugin
[INFO] ------------.plugin.test
[INFO] ------------.main.plugin.internationalization.at
[INFO] rest-plugin
[INFO] main-plugin
[INFO] ------------.product
[INFO] ------------.rest.plugin.test
Таким образом, окончательное сообщение об ошибке:
Caused by: java.lang.IllegalStateException: ------------..client:------------..crud.plugin:eclipse-plugin:1.0.0-SNAPSHOT does not provide an artifact with classifier 'null'
Имена пользовательских модулей заменяются на ------------. в этом вопросе.