Gradle project dependencies not added to generated ivy.xml

(Brian Humphrey) #1

I am running into an issue when publishing artifacts to using the ‘ivy-publish’ plugin. There are multiple modules where I publish a custom jar or a couple custom jars and the ivy.xml file does not add the project dependencies. Would this be because they are custom jars or something else?

Here is a sample of how I am publishing.

            organisation "${group}"
            module "${module_name}"
            revision "${version}"
              artifact (file("${buildDir}/dist/${module_context}.jar")){
                name "${module_name}"
                extension 'jar'

These are the dependencies that are being used by the project.

    compile (group:"com.xxxxxxx", name:"xxxx-svcs-common", version:"${xxxx_svcs_common_service_version}", transitive:false)
    compile (group:"com.xxxxxxx.cache", name:"xxxx-cache", version:"${xxxx_svcs_common_svcs_cache_version}", transitive:false)
    compile (group:"com.sun.jersey", name:"jersey", version:"1.8", transitive:false)
    compile (group:"", name:"coherence", version:"3.7.1", transitive:false)
    compile (group:"com.xxxxxxx.cache", name:"xxxx-cache", version:"${xxxx_entsvcs_common_svcs_cache_version}", transitive:false)

And this is the ivy.xml that is generated.

<?xml version="1.0" encoding="UTF-8"?>
<ivy-module version="2.0">
  <info organisation="xxx.xxxxxxx" module="xxxx-service-name" revision="xxx2014_jun-201406051004" status="integration" publication="20140605100413"/>
    <artifact name="xxxx-service-name" type="jar" ext="jar"/>

Any help would be greatly appreciated.



The simplest way to have the dependencies published with your jar is to publish the Java ‘component’ for the project. You can read about how to do this in