Maven: как делать параллельные сборки?

Предлагаемые решения великолепны, но maven-2 я хотел добавить кое-что maven-2 к ответам, касающимся стабильности тестирования во время параллельных сборок.

Итак, когда build-automation используется Maven parallel build:

mvn -T 4 clean install # Builds with 4 threads
mvn -T 1C clean install # 1 thread per cpu core
mvn -T 1.5C clean install # 1.5 thread per cpu core

Могут возникнуть build-process некоторые проблемы с тестами. Обратите внимание build-process на любое поведение в тестах, которое build-process отличается при последовательном build-process и параллельном выполнении build-automation тестов. В большинстве случаев maven-2 это происходит из-за неправильной изоляции тестов с точки зрения ресурсов.

Например, test1 управляет build-process записью в базе данных с помощью build-process ключа 12345, который жестко запрограммирован, а maven-2 test2 использует ту же запись! Это maven-2 не может быть хорошо…

Это maven-2 ситуация, которую следует maven-2 учитывать в первую очередь, но build-automation иногда она забывается и может maven-2 привести к другим проблемам maven-2 после перехода на параллельную maven-2 сборку maven.

В случае, если maven-2 это произойдет, и вы по-прежнему maven-2 хотите использовать параллельное build-automation выполнение, по крайней мере, в maven-2 некоторых случаях, вы можете build-process (конечно, помимо попытки build-process исправить тест и сделать maven-2 их должным образом изолированными) в build-automation disable Maven test runs с помощью -DskipTests аргумент:

mvn clean install -T 4 -DskipTests

maven-2

build-process

build-automation

2022-11-05T05:18:27+00:00