ivy module.xml不';使用gradle publish时不包含所有工件

ivy module.xml不';使用gradle publish时不包含所有工件,gradle,ivy,Gradle,Ivy,我相信这可能与 如果我有一套出版物,如 publishing { publications { serverpub(IvyPublication) { artifact(ejbJar) { name 'ejb' } } clientpub(IvyPublication) { artifact(clientEjbJar) { name 'client-ejb' } }

我相信这可能与

如果我有一套出版物,如

publishing {
  publications {
    serverpub(IvyPublication) {
      artifact(ejbJar) {
        name 'ejb' 
      }
    }
    clientpub(IvyPublication) {
      artifact(clientEjbJar) { 
        name 'client-ejb' 
      }
    }
    modulepub(IvyPublication) {
      artifact(moduleJar) {
        name 'cname-core'
      }
    }
    persistpub(IvyPublication) {
      artifact(persistenceJar) {
        name 'core-entities'
      }
    }
  }
}
完成“发布”后

<Project Name>/ivy/<version>/ivy/ivy-<version>.xml
/ivy//ivy/ivy-.xml
文件仅包含出版物列表中的第一项

<artifact name="ejb" type="jar" ext="jar"/>

如果我将所有工件都放在一个出版物ie.serverpub下,那么ivy.xml文件将包含所有正确的工件,但是jar文件本身都是相同的,因此我的错误与前面的链接相同


我是否做错了什么,因为到目前为止,Gradle已经证明发布工件是件痛苦的事。

您已经声明了四个独立的发布,每个发布都将生成自己的模块描述符。要生成包含多个工件的常春藤模块,必须在同一出版物下列出它们。关于“Jar文件是相同的”问题,一个最小的自包含可复制的示例会有所帮助

请注意,您正在使用的新的
ivy publish
插件仍在酝酿中,可能存在缺陷。我们非常感谢您的反馈,以使其更好。联系Gradle开发人员和专家的最佳地点是