[GRADLE-1266] transitive groovy dependencies aren't included in maven POMs Created: 21/Dec/10  Updated: 04/Jan/13  Resolved: 21/Aug/11

Status: Resolved
Project: Gradle
Affects Version/s: 0.9-rc-3
Fix Version/s: None

Type: Bug
Reporter: Adam Monsen Assignee: Luke Daley
Resolution: Not A Bug Votes: 1


Even if I have

{ transitive = true } for a groovy dependency, when I do "gradle install" or "gradle uploadArtifacts" the installed/uploaded POM does not mention the dependencies.

As a workaround, I'm explicitly adding "runtime..." lines to my build file.

here's a resultant POM from when I exclude the "runtime..." deps

and one when I do include the "runtime..." deps

Maybe it's that the maven deployer/installer/whatever doesn't honor { transitive = true }

in dependencies.groovy lines?

Comment by Luke Daley [ 21/Aug/11 ]

POM files only express first level dependencies, not transitive ones. Maven automatically determines the transitive dependencies by inspecting the corresponding pom file for each first level dependency, so the current behaviour is correct.

If I have misunderstood the issue, please reopen.

Comment by Raoul Kaltenhäuser [ 19/Apr/12 ]

I think, the issue is the following (because I ran into the same problem):
the maven artifact (JAR) that is built by gradle contains class files that have groovy dependencies.
But the POM generated for this JAR does not mention the groovy dependency.
So if anybody uses the artifact in another maven project, there will be a ClassNotFoundException because of the missing groovy classes.
As I am new to gradle, I am not sure if this is a bug, or a misunderstanding on my side.

Generated at Wed Jun 30 11:51:10 CDT 2021 using Jira 8.4.2#804003-sha1:d21414fc212e3af190e92c2d2ac41299b89402cf.