Безопасно ли запускать непрерывные сборки с «mvn verify» вместо «mvn clean verify» - PullRequest
6 голосов
/ 13 октября 2010

Мы выполняем наши непрерывные сборки на Hudson с «mvn clean verify». Это то, что мы всегда делали, и поэтому мы никогда не ставили это под сомнение.

Вопрос в том, насколько безопасен запуск непрерывной сборки только с помощью mvn verify? Это означает, что плагин maven-compiler-plugin будет компилировать только те классы, которые были изменены с момента последней сборки, и сэкономит драгоценное время.

Будет ли обратная связь такого же качества, как и с «чистой», или есть какие-либо недостатки, которые следует ожидать?

Тестируемый продукт - это типичное веб-приложение на Java с большим количеством сгенерированного кода (JSP, отчеты). Существует также код с использованием Dependency Injection.

1 Ответ

8 голосов
/ 13 октября 2010

Нет, это не безопасно!Плагин компилятора Maven недостаточно умен, чтобы выяснить, что API класса A изменился и что он должен проверять все другие классы, которые используют и этот API.Он только скомпилирует A и создаст jar с большим количеством поврежденных классов.

Примечание. Обычно лучше заранее запустить mvn clean, а затем запустить сборку / проверку / компиляцию / установку.Это позволяет вам запускать вторую команду несколько раз без очистки все время.

...