diff --git a/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java b/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java index 0d82a1459365..b3da9a408c46 100644 --- a/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java +++ b/maven-core/src/main/java/org/apache/maven/project/DefaultProjectBuilder.java @@ -94,7 +94,8 @@ @Named @Singleton public class DefaultProjectBuilder implements ProjectBuilder { - private static final String BUILDER_PARALLELISM = "maven.projectBuilder.parallelism"; + public static final String BUILDER_PARALLELISM = "maven.projectBuilder.parallelism"; + public static final int DEFAULT_BUILDER_PARALLELISM = 4; private final Logger logger = LoggerFactory.getLogger(getClass()); private final ModelBuilder modelBuilder; @@ -221,7 +222,7 @@ class BuildSession { } private int getParallelism(ProjectBuildingRequest request) { - int parallelism = Runtime.getRuntime().availableProcessors(); + int parallelism = DEFAULT_BUILDER_PARALLELISM; try { String str = request.getUserProperties().getProperty(BUILDER_PARALLELISM); if (str == null) { @@ -233,7 +234,7 @@ private int getParallelism(ProjectBuildingRequest request) { } catch (Exception e) { // ignore } - return parallelism; + return Math.min(Runtime.getRuntime().availableProcessors(), parallelism); } ProjectBuildingResult build(File pomFile, ModelSource modelSource) throws ProjectBuildingException {