Skip to content

Commit 8ceae2a

Browse files
authored
Build: Allow deps to be a direct jar (elastic#28096)
Currently the code which disable transitive dependencies assumes all deps are a "module dependency" in gradle. But a jar file dep is not. This commit relaxes the closure signature to allow any dependency and only enforce the transitive disabling for module dependencies.
1 parent 2c24ac7 commit 8ceae2a

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

buildSrc/src/main/groovy/org/elasticsearch/gradle/BuildPlugin.groovy

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ import org.gradle.api.Project
3232
import org.gradle.api.Task
3333
import org.gradle.api.XmlProvider
3434
import org.gradle.api.artifacts.Configuration
35+
import org.gradle.api.artifacts.Dependency
3536
import org.gradle.api.artifacts.ModuleDependency
3637
import org.gradle.api.artifacts.ModuleVersionIdentifier
3738
import org.gradle.api.artifacts.ProjectDependency
@@ -274,8 +275,9 @@ class BuildPlugin implements Plugin<Project> {
274275
})
275276

276277
// force all dependencies added directly to compile/testCompile to be non-transitive, except for ES itself
277-
Closure disableTransitiveDeps = { ModuleDependency dep ->
278-
if (!(dep instanceof ProjectDependency) && dep.group.startsWith('org.elasticsearch') == false) {
278+
Closure disableTransitiveDeps = { Dependency dep ->
279+
if (dep instanceof ModuleDependency && !(dep instanceof ProjectDependency)
280+
&& dep.group.startsWith('org.elasticsearch') == false) {
279281
dep.transitive = false
280282

281283
// also create a configuration just for this dependency version, so that later

0 commit comments

Comments
 (0)