I have a project that uses gradle and mavenCentral()
(plus mavenLocal()
). It has enough dependencies that I can't go through them one by one.
Given the name of a .jar file in build/install/x/lib
, how do I find out the chain of transitive dependencies that caused it to be included?
update: I discovered gradle dependencies
. The output shows:
org.apache.commons:commons-jexl:2.1.1
\---- commons-logging:commons-logging:1.1.1 -> 1.1.3
What does this mean? 1.1.1 is the version I expect, and 1.1.3 is the version I seem to actually end up using. Looking at the pom for commons-jexl it looks like it does indeed list logging:1.1.1 as a requirement. What's going on? Is there a way for me to tell it to avoid certain versions, or force it to use the version it was set to?
The problem in my case is that it's including a -SNAPSHOT version and I'd rather it didn't. In fact I probably want it to just use the version numbers I'm asking for instead of the most recent it can find.