Чи можемо ми розпочати збірку maven з того моменту, коли він не вдався


89

Припустимо, я повністю будую свій великий проект, який має 7 модулів, а на 6-му модулі, збірка не вдалася, оскільки не вдалося провести тест. Чи є спосіб, за допомогою якого я можу розпочати збірку з того моменту, коли вона не вдалася?

Відповіді:


134

Ви можете відновити збірку з 6-го модуля, використовуючи -rfабо --resume-from:

-rf, --resume-from
          Відновити реактор із зазначеного проекту

Детальніше див. У Розширених параметрах реактора .


Дякую за це. Я спробую
Шехар,

1
це добре, для підпроектів просто використовуйте subproject/subsubprojectяк параметр
Акостадінов

13
Приклад:maven -rf <module name> clean install
Золтан

9
Це працювало у мене лише тоді, коли я додавав назву модуля двокрапкою, наприклад mvn -rf :moduleName install. (Не впевнений точно, для чого потрібна товста кишка, але, схоже, це потрібно - принаймні для моєї установки.)
Стів Чемберс

3
Схоже, це працює лише у тому випадку, якщо у вашій початковій збірці була installмета, оскільки відновлювана збірка може потім отримати артефакти, які вже були побудовані з вашого локального сховища Maven, для вирішення залежностей від них. Я вважаю поганою практикою запускати installзбірки, оскільки ви в кінцевому підсумку захаращуєте своє локальне сховище моментальними знімками, і ви можете в кінцевому підсумку залежати від старого знімка, ніж ви очікуєте. Схоже, для збірок, де ви лише packageі ні install, використання -rfне є варіантом: вам доведеться виконати всю збірку.
Франс,


9

Ви можете відновити збірку з будь-якого потрібного вам модуля за допомогою -rfкоманди. Наприклад, якщо збірка не вдалася в myproject-proxy, ви можете скористатися наступною командою:

mvn -rf myproject-proxy clean install

Мені потрібно було поставити двокрапку, щоб це працювало, наприклад -rf: yourModule Див. Інші відповіді.
Gapmeister66,

8

подивіться на резюме maven, і ви побачите виконані модулі та де maven зупинено. тоді спробуйте це:

mvn clean install-Dmaven.test.skip=true -rf :yourModule

-1

Синтаксис: mvn -rf ім'я модуля mavengoal або mvn --resume-від ім'я модуля mavengoal

Наприклад: mvn -rf admin-module clean install або mvn --resume-from admin-module clean install


-rfне є коротким для --remove-from. Це скорочено для--resume-from
Гілі

-2

Ви можете запустити збірку модуля 6 окремо, щоб перевірити, чи він все ще не вдається, але я боюся, що вам потрібно будувати всі модулі з самого початку, коли ви хочете запустити "велику" збірку.

Змінити: Звичайно, наступні збірки будуть швидшими, оскільки код модулів 1-5 вже скомпільований, якщо ви не запустили чистий процес як частину вашої збірки.


Так .. Я це знаю .. Але я шукав спосіб розпочати збірку з того моменту, коли він не вдався ..
Шехар
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.