We are in process of upgrading Gradle 2.4 to 2.5 and came across this issue.
Our projects got few dependencies with excluding some transitives like below
compile (“org.drools:drools-core:6.3.0.Final”){
exclude group : ‘org.mvel’
}
compile (“org.springframework:spring-core:4.2.5.RELEASE”){
exclude group : ‘commons-logging’
}
When we run uploadArchives
, it is generating ivy.xml with entries as
<dependency org="org.drools" name="drools-core" rev="6.3.0.Final" conf="compile->default"/>
<dependency org="org.springframework" name="spring-core" rev="4.2.5.RELEASE" conf="compile->default"/>
But when we ran the same with Gradle 2.4, it shows as
<dependency org="org.drools" name="drools-core" rev="6.3.0.Final" conf="compile->default">
<exclude org="org.mvel" module="*" name="*" type="*" ext="*" conf="compile" matcher="exact"/>
</dependency>
<dependency org="org.springframework" name="spring-core" rev="4.2.5.RELEASE" conf="compile->default">
<exclude org="commons-logging" module="*" name="*" type="*" ext="*" conf="compile" matcher="exact"/>
</dependency>
I tried running even with gradle 2.11 and I still the same behavior. Is this intentional?
Attaching sample project to reproduce the issue Gradle-ivy-Test.zip (59.9 KB)
Just try running
“Gradle uploadArchives” with Gradle 2.4 and 2.5, and should see the difference…