Gradle ivy.xml依赖项未添加

时间:2014-06-05 14:21:23

标签: java gradle dependencies ivy

我在使用'ivy-publish'插件发布工件时遇到了问题。有多个模块,我发布自定义jar或一些自定义jar,ivy.xml文件不添加项目依赖项。这是因为它们是定制罐子还是其他东西?

以下是我如何发布的示例。

publishing{
    publications{
        client(IvyPublication){
            organisation "${group}"
            module "${module_name}"
            revision "${version}"

            artifact (file("${buildDir}/dist/${module_context}.jar")){
                name "${module_name}"
                extension 'jar'
            }
        }
    }
}

这些是项目正在使用的依赖项。

dependencies{
    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:"com.oracle", 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)
}

这是生成的ivy.xml。

<?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"/>
  <configurations/>
  <publications>
    <artifact name="xxxx-service-name" type="jar" ext="jar"/>
  </publications>
  <dependencies/>
</ivy-module>

非常感谢任何帮助。

感谢。

1 个答案:

答案 0 :(得分:2)

而不是

        artifact (file("${buildDir}/dist/${module_context}.jar")){
            name "${module_name}"
            extension 'jar'
        }

使用

        from components.java

第一个只是发布指定的文件。第二个将发布由java插件的jar任务生成的jar,并从runtime配置生成依赖关系元数据。