Skip to content

Conversation

@arina-ielchiieva
Copy link
Member

…er version is used when resolving dependency version conflicts

Details in DRILL-5849.

…er version is used when resolving dependency version conflicts
Copy link
Contributor

@paul-rogers paul-rogers left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! Not sure how this ever worked before...
+1

@vrozov
Copy link
Member

vrozov commented Oct 6, 2017

The proposed changes simplify the dependency management, but do not change the dependency resolution, AFAIK.

@arina-ielchiieva
Copy link
Member Author

@vrozov as far as I understand to manage dependency resolution, you can either exclude conflicting dependencies or use dependency management mechanism [1, 2]. I have used dependency management mechanism since it's more convenient and you don't have to track new conflicting dependencies. If you know it's not sufficient, please let us know what is the best solution.

[1] https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html
[2] http://techidiocy.com/maven-dependency-version-conflict-problem-and-resolution/

@vrozov
Copy link
Member

vrozov commented Oct 8, 2017

@arina-ielchiieva I refer to java-exec and fmpp modules dependencies resolution. Both AFAIK should not be affected by the change, so I suppose it is another module that has a transitive dependency on freemarker through java-exec and another 3rd party library that has the issue described in the JIRA. Please confirm and provide details on the module and the 3rd party library.

@arina-ielchiieva
Copy link
Member Author

@vrozov

  1. Change the the main pom.xml where I have added freemarker lib to the dependencyManagement section is the core change of this pull request. With this change dependency resolution is always done in favor of the freemarker version we expect.
  2. Changes in other two pom files are just clean up. Since as we now have freemarker lib in dependencyManagement there is no need to indicate version there.
  3. Regarding which modules do have transitive dependency on freemarker, right now there are two modules - java-exec (jersey-mvc-freemarker lib) and fmpp (fmpp lib).

Copy link
Member

@vrozov vrozov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@arina-ielchiieva LGTM, though I still don't see why moving freemaker to dependencyManagement section changes dependency resolution for java-exec and fmpp modules. For both modules freemaker is not a transitive dependency, it is a direct dependency. For the direct dependency, should not the version explicitly specified in java-exec and fmpp pom.xml be used even if there is a transitive dependency on the freemaker library through jersey-mvc-freemarker or fmpp libraries?

@asfgit asfgit closed this in 27b6605 Oct 11, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants