I just figured out an error in my build script relating to log4j and
transitive dependencies, basically I had
compile group: 'log4j', name: 'log4j', version: '1.2.15'
and when I ran gradle jar I got this:
Execution failed for task ':fissuresImpl:test'.
Cause: Could not resolve all dependencies for configuration 'testRuntime':
- download failed: javax.jms#jms;1.1!jms.jar
- download failed: com.sun.jdmk#jmxtools;1.2.1!jmxtools.jar
- download failed: com.sun.jmx#jmxri;1.2.1!jmxri.jar
Very confusing as the jms, jmxtools and jmxri dependencies were
sneaking in as transitive dependencies of log4j (at least I think that
is what is happening). In trying to figure this out, I tried gradle
dependencyReport to see where the jms dependencies were coming from,
but it also died due with the same error.
In order to help find these "bad" transitive dependencies, it would be
really nice if the dependencyReport did not actually try to download
the jars. I would think that all the information needed to generate
the report would exist in either the build.gradle or perhaps poms and
ivy.xml files if using the remote repositories.