Skip to content

Usage question #1

@ryan-williams

Description

@ryan-williams

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!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions