You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Hyukjin Kwon (JIRA)" <ji...@apache.org> on 2019/05/21 05:35:35 UTC

[jira] [Updated] (SPARK-1844) Support maven-style dependency resolution in sbt build

     [ https://issues.apache.org/jira/browse/SPARK-1844?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Hyukjin Kwon updated SPARK-1844:
--------------------------------
    Labels: bulk-closed  (was: )

> Support maven-style dependency resolution in sbt build
> ------------------------------------------------------
>
>                 Key: SPARK-1844
>                 URL: https://issues.apache.org/jira/browse/SPARK-1844
>             Project: Spark
>          Issue Type: Improvement
>          Components: Build
>            Reporter: Patrick Wendell
>            Assignee: Josh Rosen
>            Priority: Major
>              Labels: bulk-closed
>
> [Currently this is a brainstorm/wish - not sure it's possible]
> Ivy/sbt and maven use fundamentally different strategies when transitive dependencies conflict (i.e. when we have two copies of library Y in our dependency graph on different versions).
> This actually means our sbt and maven builds have been divergent for a long time.
> Ivy/sbt have a pluggable notion of a [conflict manager|http://grepcode.com/file/repo1.maven.org/maven2/org.apache.ivy/ivy/2.3.0/org/apache/ivy/plugins/conflict/ConflictManager.java]. The default chooses the newest version of the dependency. SBT [allows this to be changed|http://www.scala-sbt.org/release/sxr/sbt/IvyInterface.scala.html#sbt;ConflictManager] though.
> Maven employs the [nearest wins|http://techidiocy.com/maven-dependency-version-conflict-problem-and-resolution/] policy which means the version closes to the project root is chosen.
> It would be nice to be able to have matching semantics in the builds. We could do this by writing a conflict manger in sbt that mimics Maven's behavior. The fact that IVY-813 has existed for 6 years without anyone doing this makes me wonder if that is not possible or very hard :P



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org