diff --git a/README.md b/README.md index bdf60133..510769bb 100644 --- a/README.md +++ b/README.md @@ -231,6 +231,7 @@ ShrinkWrap Resolvers allows you to override any programmatic configuration via S - `maven.legacyLocalRepo`: Flag whether to ignore origin tracking for artifacts present in local repository. - `org.jboss.shrinkwrap.resolver.maven.skipCompilation`: Flag to skip compilation of resolved artifacts (true/false) - default is false. +- `org.jboss.shrinkwrap.resolver.maven.disableProjectLocal`: Flag to disable Maven 4 project-local repository (true/false) - default is false. ## Embedded Maven diff --git a/maven/impl-maven/src/main/java/org/jboss/shrinkwrap/resolver/impl/maven/MavenWorkingSessionImpl.java b/maven/impl-maven/src/main/java/org/jboss/shrinkwrap/resolver/impl/maven/MavenWorkingSessionImpl.java index e4ae972d..4d6929f5 100644 --- a/maven/impl-maven/src/main/java/org/jboss/shrinkwrap/resolver/impl/maven/MavenWorkingSessionImpl.java +++ b/maven/impl-maven/src/main/java/org/jboss/shrinkwrap/resolver/impl/maven/MavenWorkingSessionImpl.java @@ -277,12 +277,18 @@ public Collection resolveDependencies(final MavenResoluti final List repos = this.getRemoteRepositories(); - Set allDependencies = new LinkedHashSet<>(depsForResolution); - Collection projectLocalDependencies = resolveProjectLocal(depsForResolution, allDependencies); - List unresolvedLocally = filterFromLocal( - allDependencies.stream().collect(Collectors.toList()), projectLocalDependencies); + List resolveFromRepository; + Collection projectLocalDependencies = Collections.emptyList(); + if (Boolean.getBoolean("org.jboss.shrinkwrap.resolver.maven.disableProjectLocal")) { + resolveFromRepository = depsForResolution; + } else { + Set allDependencies = new LinkedHashSet<>(depsForResolution); + projectLocalDependencies = resolveProjectLocal(depsForResolution, allDependencies); + resolveFromRepository = filterFromLocal( + allDependencies.stream().collect(Collectors.toList()), projectLocalDependencies); + } - final CollectRequest request = new CollectRequest(MavenConverter.asDependencies(unresolvedLocally, + final CollectRequest request = new CollectRequest(MavenConverter.asDependencies(resolveFromRepository, getSession().getArtifactTypeRegistry()), MavenConverter.asDependencies(depManagement, getSession().getArtifactTypeRegistry()), repos);