Я хотел бы знать, что может сделать Jenkins игнорировать ошибку компиляции и закончить работу с успешным статусом?Jenkins Build не работает
Мы используем Jenkins v1.590 с Maven 1.0.2 (на данный момент нет выбора) и SVN. Наш проект является веб-приложением, и он подразделяется на 5 модулей Maven. 4 модуля/проекты Java, которые производят банки и 1 модуль, который создает войну.
Вот пример ошибки компиляции, которая должна завершиться с телосложением войны:
C:\DevTools\workspace-Jenkins\xxxxx_Construction_du_War_3_18_x\src\main\java\com\.....\servlet\command\compte\RemboursementAnnuler.java:54: annulerReglement(com.........base.ReglementBean,java.lang.String,com.........securite.BusinessUtilisateurBean) in com......transaction.compte.Compte cannot be applied to (com......base.ReglementBean,com.......metier.securite.BusinessUtilisateurBean)
: new Compte().annulerReglement(reglementBean, businessUtilisateurBean);
^
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
2 errors
BUILD FAILED
File...... C:\.maven\cache\maven-java-plugin-1.5\plugin.jelly
Element... ant:javac
Line...... 63
Column.... 48
Compile failed; see the compiler error output for details.
Total time: 33 seconds
Finished at: Mon Nov 24 18:54:39 CET 2014
Finished: SUCCESS
Почему Дженкинс не может обнаружить себя неудачу? Может ли быть что-то с кодом выхода Maven 1?
Я пробовал с одним из проектов, которые строят банку, и это та же проблема.
Любой ключ?
спасибо заранее.
[EDIT] Мое решение: Вдохновленный предложение от @Jigar Joshi, я просто заменил Maven шаг за простой пакетной команды вызывающей maven clean ...
(потому что с Maven 1, по умолчанию имя команды построить maven
, а не mvn
). Я сделал это в каждом из моих модулей/заданий, и теперь каждая ошибка компиляции должным образом сообщается по мере сбоя сборки. Проблема была в действительности кодом возврата команды Maven.
Перед тем, чтобы быть в состоянии назвать maven.bat
в работу, я должен был установить Maven 1.0.2 в классическом месте (например c:\DevTools\maven-1.0.2
), установите переменную окружения MAVEN_HOME
, чтобы указать на это место, а также добавил %MAVEN_HOME%\bin
к PATH
переменной окружения , Затем я перезапустил машину, чтобы позволить Дженкинсу все это учитывать, и теперь все в порядке.
как настроен ваш проект Дженкинс? –
Какой тип шага сборки вы используете - шаг сборки Maven или командный шаг оболочки/Windows, который вызывает mvn? –
@Jigar Joshi: Что ты имеешь в виду? Во всяком случае, я думаю, что у меня есть трек ... Я только что видел в помощи целей Maven (в настройке задания Дженкинса), что некоторые версии Maven имеют плохой код возврата! Но не указано, как обойти это ... –