-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Hey @vanzin, finally got a chance to check this out, and its usage in livy.
I noticed that the livy-core-parent POM does not have any references to the ${scala.binary.version} that the scala-2.1*/pom.xmls overwrite; for example, there are no cross-versioned dependencies.
Would this still work in the case that a dependency needed a cross-version? That is basically where I got stuck attempting this approach (relevant section of blog post draft).
If you want to only declare each dependency once (i.e. in the parent, not in each {2.10,2.11} POM), then the published livy-core-parent POM will have to choose one or the other scala.binary.version value for its declaration of that dep (otherwise you'd be publishing a POM with an un-set property, which iirc errored at some level), and then both 2.1* modules end up having that version in their dep-closures/classpaths, because it is effectively a hard-coded 2.10 or 2.11 dep, so you need to publish 2.1*-specific parent POMs, and you are back where you started…
Let me know if that question is not coherent, and thanks for pointing me to this!